无法将 '1-dimensional array of String' 类型的 Visual Basic 值转换为"字符串"



我在一个程序上工作,我得到这个"类型'字符串的一维数组'的值不能转换为'字符串'。"

下面是得到这个错误的代码:
Label4.Text = System.IO.Directory.GetDirectories(Backup)

这里是字符串

Dim Backup As String
        Backup = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & ".MineRbu"

GetDirectories()方法返回字符串数组。您正在将其设置为字符串属性(.Text)。

试试这个:

Dim dirs() As String = System.IO.Directory.GetDirectories(Backup)
Label4.Text = string.Join(vbCrLf, dirs)

这将把所有的目录提取到一个数组中,然后把每个项放到你的标签上(用新行分隔)。

System.IO.Directory.GetDirectories(Backup)返回一个字符串数组。

您可能需要将其更改为:

'This will insert each value returned from GetDirectories'
For Each Dir as String in System.IO.Directory.GetDirectories(Backup)
  Label4.text &= Dir & VbCrLF
Next
'Alternatively, if you just need the first result:'
Label4.text = System.IO.Directory.GetDirectories(0)

引用

  • GetDirectories

您应该将Backup声明为DirectoryInfo而不是string类型

Dim Backup As DirectoryInfo = New DirectoryInfo(path)

参见Microsoft示例

最新更新