我是一个新手,所以任何建议都会很棒。我有一个程序 打开CSV,然后将其另存为具有不同名称的csv。将会有一套改变领域的规则,但还没有达到目标。
当我在一个小的csv文件(大约4列和行)上运行它时,它工作正常,但是如果文件较大,则会因上述错误而失败。我确定它有点蠢,但我不知所措。
谢谢,
迪安
Dim FileName = tbOpen.Text
Dim fileout = tbSave.Text
Dim lines = File.ReadAllLines(FileName)
Dim output As New List(Of String)
For Each line In lines
Dim fields = line.Split(","c)
If fields(1) = "" Then 'This is where the error is triggered
fields(1) = "Norman"
End If
If fields(3) = "" Then
fields(3) = "Blue Leather"
End If
If fields(4) = "" Then
fields(3) = "Interlined"
End If
output.Add(String.Join(","c, fields))
Next
File.WriteAllLines(fileout, output)
Try
Dim a As String = My.Computer.FileSystem.ReadAllText(tbSave.Text)
Dim b As String() = a.Split(vbNewLine)
ListBox2.Items.AddRange(b)
Catch ex As Exception
MsgBox("error")
End Try
答案 0 :(得分:0)
请记住,数组启动索引0. VB因延伸此概念而臭名昭着。通常,当你声明一个包含10个元素的数组时,索引将是0到9.另一方面,使用VB,索引将是0到10,这实际上会给你11个元素。