好的,所以我用 streamreader 读取了一个 CSV 文件,当它读取一个空行或该行的格式不正确时,异常索引超出了范围。
是否有解决方案,当您收到此错误时,您转到 csv 文件的下一行
好的,所以我用 streamreader 读取了一个 CSV 文件,当它读取一个空行或该行的格式不正确时,异常索引超出了范围。
是否有解决方案,当您收到此错误时,您转到 csv 文件的下一行
最好的方法是完全避免手动解析 CSV,而是使用可用的 CSV 阅读器之一。例如这个快速的 CSV-reader。
我不会对异常做出反应,而是首先跳过空行。
StreamReader
你也可以File.ReadLines
用 Linq代替 a :
Dim lines = From line In File.ReadLines(path)
Where line.Length <> 0
' now you can enumerate all not-empty lines '
For Each line In lines
' ... '
Next
如果你坚持一个Streamreader
:
Using sr = New StreamReader(path)
While Not sr.EndOfStream
Dim line = sr.ReadLine()
If Not String.IsNullOrEmpty(line) Then
' ... '
End If
End While
End Using