在 Visual Basic 中列出没有文件路径的 ListBox 中的文件
List files in ListBox without filepath in Visual Basic
我正在尝试使用
将文件列表到列表框中
Dim files() As String = IO.Directory.GetFiles(CurDir, "*.6eamed")
对于我使用的列表框
ListBox1.Items.AddRange(files)
但是returns有完整路径,我怎么能只得到文件名呢?
有多种选择。如果你想尽可能地坚持你已经拥有的东西,你可以为每个文件路径调用 Path.GetFileName
,例如
Dim filePaths = Directory.GetFiles(CurDir, "*.6eamed")
Dim fileNames = Array.ConvertAll(filePaths, Function(s) Path.GetFileName(s))
ListBox1.Items.AddRange(fileNames)
不过我会采用稍微不同的方法。我建议您使用 DirectoryInfo
、FileInfo
和数据绑定:
Dim folder = New DirectoryInfo(CurDir)
Dim files = folder.GetFiles("*.6eamed")
With ListBox1
.DisplayMember = "Name"
.ValueMember = "FullName"
.DataSource = files
End With
用户现在只能看到文件名,但您可以从 SelectedValue
属性.
中获取所选项目的完整路径
我正在尝试使用
将文件列表到列表框中Dim files() As String = IO.Directory.GetFiles(CurDir, "*.6eamed")
对于我使用的列表框
ListBox1.Items.AddRange(files)
但是returns有完整路径,我怎么能只得到文件名呢?
有多种选择。如果你想尽可能地坚持你已经拥有的东西,你可以为每个文件路径调用 Path.GetFileName
,例如
Dim filePaths = Directory.GetFiles(CurDir, "*.6eamed")
Dim fileNames = Array.ConvertAll(filePaths, Function(s) Path.GetFileName(s))
ListBox1.Items.AddRange(fileNames)
不过我会采用稍微不同的方法。我建议您使用 DirectoryInfo
、FileInfo
和数据绑定:
Dim folder = New DirectoryInfo(CurDir)
Dim files = folder.GetFiles("*.6eamed")
With ListBox1
.DisplayMember = "Name"
.ValueMember = "FullName"
.DataSource = files
End With
用户现在只能看到文件名,但您可以从 SelectedValue
属性.