我当前正在编写Visual Basic .NET中的程序。
在程序的一个特定部分中,我试图从文本文件中的特定行中读取,更改该文件中的数据值之一(数据值由",",","分开),并覆盖相同文件中的相同。
当前,我编写的代码可以做所有这些,但是要使一个部分工作,我需要能够确定要指定数据的行,然后添加到变量中,以便该行可以以后被用来写。这是我正在谈论的代码:
Private Sub AddC1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AddC1.Click
Dim AddC1 As String = 0
Dim checkfile As New System.IO.StreamReader("....checkfile.txt")
Dim check As String = checkfile.ReadToEnd
Dim objreader As New System.IO.StreamReader("....usernamepassword.txt")
Dim contents As String = objreader.ReadLine
For i As Integer = 1 To check
contents = objreader.ReadLine
Dim data As New List(Of String)(contents.Split(","))
If forname.Text = data(2) Then
If surname.Text = data(3) Then
AddC1 = data(8) + 1
Exit For
End If
End If
Next i
Dim Lines() As String = System.IO.File.ReadAllLines("....usernamepassword.txt")
Lines(1) = ""
System.IO.File.WriteAllLines("....username.txt", Lines)
End Sub
请注意,此代码尚未完成。我现在,这种解释没有完全有意义,但是我尽了最大的努力来尽我所能。
预先感谢,alfie。
Dim check As String = checkfile.ReadToEnd
应该是
Dim check = File.ReadAllLines("....checkfile.txt").Length
将为您提供文件中的行数。否则,
For i As Integer = 1 To check
会给您一个错误。无法从整数转到字符串。您可以声明另一个变量,并将其设置为I -1(因为您的循环从1而不是0)内部内部如果循环(如果循环),这将为您提供以后使用的索引值。