我在这里看过这个问题几次,但我似乎找不到正确的答案。我目前有一个我正在用 VB 编写的 Windows 窗体应用程序,它可以创建玩家配置文件(这是一个学校项目)。在“注册”页面上,我获取信息并将其读取到一个 .txt 文件中,每个字段用逗号分隔符逐行。这使得 .txt 看起来像这样:
Dan,Boyle,M,39,(707) 555-1234,555 S. West Street,18,D,R
Justin,Braun,M,27,(916) 555-1255,858 W. South St,5,D,L
我为此运行了正确的新行,并称之为很好,但我需要为我的项目做的是能够编辑玩家资料。到目前为止,我发现最好的方法是重写整行,我已经设法做到了。但我想不通的是如何删除当前行并替换。
Dim FileString As String = "MasterRoster.txt"
Dim index As Integer = Home.cbPlayerLookUp.SelectedIndex
Dim playerInfo() As String = File.ReadAllLines(FileString)
Dim FieldString() As String
Dim RecordString As String = ""
If Not playerInfo.Length < index Then
FieldString = playerInfo(index).Split(","c)
'Update Player stats)
If CInt(FieldString(16)) = index Then
FieldString(12) = CStr(CInt(FieldString(12)) + CInt(txtGoals.Text))
FieldString(13) = CStr(CInt(FieldString(13)) + CInt(txtAssists.Text))
FieldString(14) = CStr(CInt(FieldString(14)) + CInt(txtPIM.Text))
FieldString(15) = CStr(CInt(FieldString(15)) + CInt(txtGames.Text))
'(FirstName0, LastName1, Gender2, Age3, Phone4, Address5, Experience6, Position7, Handedness8, Team9, Jersey#10, imgPath11, Goals12, Assists13, PIM14, Total Games15, playerID Number16)
RecordString = FieldString(0) & "," & FieldString(1) & "," & FieldString(2) & "," & FieldString(3) & "," & FieldString(4) & "," & FieldString(5) &
"," & FieldString(6) & "," & FieldString(7) & "," & FieldString(8) & "," & FieldString(9) & "," & FieldString(10) & "," & FieldString(11) & "," & FieldString(12) & "," &
FieldString(13) & "," & FieldString(14) & "," & FieldString(15) & "," & FieldString(16) & vbNewLine
End If
My.Computer.FileSystem.WriteAllText(FileString, RecordString, True)
End If
目前,这将在我的 .txt 文件“MasterRoster.txt”的底部添加一个新行,最后更新信息,但旧行仍然存在。我怎样才能代替旧线?