1

我正在将文件中的行添加到列表框中,并希望删除任何空行:

ListBox1.Items.AddRange(Split(My.Computer.FileSystem.ReadAllText(logsFilePath & "GENERAL.LOG"), vbNewLine), StringSplitOptions.RemoveEmptyEntries)

上面的代码不起作用,当我使用时, StringSplitOptions.RemoveEmptyEntries,它会将项目添加到列表框中,并且还会添加空行。

将项目添加到列表框时,我希望忽略所有空行

4

2 回答 2

2

将这些行作为单独的行读取(有一个函数可以做到这一点)。

使用 Linq 选择非空行。

将这些添加到列表框中。

(额外提示:尽量避免单行)

Dim lines = File.ReadAllLines(path)
Dim noneEmptyLines = lines.Where(Function(line) Not [String].IsNullOrWhitespace(line)).ToArray()
ListBox1.Items.AddRange(noneEmptyLines)
于 2013-05-12T07:02:28.157 回答
1

作为替代方案和单行解决方案,您应该这样做:

 ListBox1.Items.AddRange(IO.File.ReadAllText("D:\abc.txt").Split(New String() {Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries))

此解决方案也适用于不支持 LINQ 的框架。

于 2013-05-12T15:47:04.120 回答