0

我有一个大问题。我尝试将数据从文件加载到列表框,但是当我加载它时,我在文件的最后一行出现异常。它说“值不能为空。参数名称:项目”。我使用此代码

 ListBox2.Items.Clear() 'clear listbox2
    For i As Integer = 0 To ListBox1.Items.Count - 1
        Dim read_text As New StreamReader(ListBox1.Items.Item(i).ToString, System.Text.Encoding.GetEncoding(1250)) ' listbox1.items.item(i) is the path of file I load data from
        Try
            Do While read_text.Peek >= 0
                If read_text.ReadLine.ToString.Contains(":") Then 'dont load lines without ":" mark
                    ListBox2.Items.Add(read_text.ReadLine) 
                End If
            Loop
            read_text.Close()
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    Next i

哪里有问题?有人可以帮忙吗?;)

4

1 回答 1

1

异常由 ListBox.Items.Add 引发,请参阅 MSDN 文档。不允许将 null(或 VisualBasic 中的任何内容)添加到 ListBox.Items

同样如评论中所写,您阅读了一行并使用包含检查它,但阅读下一行将其添加到列表中。

您应该更改代码,以便将从ReadLine获得的行保存在变量中。比检查它是否不是什么以及它是否包含“:” - 在这种情况下,您可以将变量添加到 ListBox2.Items。

于 2013-08-11T14:12:05.100 回答