Arrays VB.net索引超出范围异常
该程序加载一个.txt文件,将其拆分为“:”,然后取下每个文件并在某处进行检查 每当我的程序到达列表的末尾时,我就有一个错误。这是我的代码Arrays VB.net索引超出范围异常,arrays,vb.net,visual-studio-2010,indexing,Arrays,Vb.net,Visual Studio 2010,Indexing,该程序加载一个.txt文件,将其拆分为“:”,然后取下每个文件并在某处进行检查 每当我的程序到达列表的末尾时,我就有一个错误。这是我的代码 Private Sub Button5_Click(sender As System.Object, e As System.EventArgs) Handles Button5.Click If ListBox1.Items.Count = 0 Then MsgBox("Checking DONE") E
Private Sub Button5_Click(sender As System.Object, e As System.EventArgs) Handles Button5.Click
If ListBox1.Items.Count = 0 Then
MsgBox("Checking DONE")
ElseIf ListBox1.Items.Count.ToString > 0 Then
Dim str As String
Dim strArr() As String
str = ListBox1.Items(0)
strArr = str.Split(":")
If str.Count > 0 Then
WebBrowser1.Document.GetElementById("email").SetAttribute("value", (strArr(0)))
WebBrowser1.Document.GetElementById("password").SetAttribute("value", (strArr(1)))
WebBrowser1.Document.GetElementById("login-form-contBtn").InvokeMember("click")
WaitForPageLoad()
Threading.Thread.Sleep(5000)
Me.Button2.PerformClick()
Else
MsgBox("Done")
End If
End If
End Sub
另外,Me.Button2.PerformClick()
以编程方式单击该按钮,然后按钮两次单击该按钮,它应该继续,直到列表框为空,但它只是崩溃/给出错误
这是将列表导入列表框的按钮
OpenFileDialog1.InitialDirectory = "./"
OpenFileDialog1.FileName = "Open a text file..."
OpenFileDialog1.Filter = "Text Files (*.txt) | *.txt"
OpenFileDialog1.ShowDialog()
Dim R As New IO.StreamReader(OpenFileDialog1.FileName)
Dim string1 As String() = R.ReadToEnd().Split(New String(Environment.NewLine, StringSplitOptions.RemoveEmptyEntries))
ListBox1.Items.AddRange(string1)
R.Close()
ListBox1.SelectedItem = ListBox1.Items(0)
Dim str As String
Dim strArr() As String
str = ListBox1.SelectedItem
strArr = str.Split(":") 'Delimits the imported combo list
Label4.Text = (strArr(0)) 'Email
Label3.Text = (strArr(1)) 'Password
Label6.Text = (ListBox1.Items.Count) 'How big is combo?
您在strArr中拆分了
str
,但检查了str.Count
str = ListBox1.Items(0)
strArr = str.Split(":")
If strArr.Count > 0 Then
....
下面的代码使用strArr的索引0和索引1,以便更好地检查
If strArr.Count > 1 Then
非常感谢。哈哈,为什么索引是1而不是0,只想增加我的知识网开始在索引0的每个数组。当您在strArr中拆分字符串时,计数表示数组中存在的元素数,因此在以下位置拆分时,字符串XXXXX:YYYY将成为两元素数组strArr(0)=XXXX,strArr(1)=YYYY。如果没有:(XXXXX YYYY),您仍然可以从拆分中获得一个数组,但它是一个单元素数组(strArr(0)=XXXXYYYY)。如果您尝试在此数组中使用index=1,您会遇到一个异常,因为索引1中没有任何元素,但我对此并不了解,但感谢您的帮助:)