У меня та же проблема, что и у Niphoet в вопросе переполнения стека Перезапись определенной строки в текстовом файле с использованием VB.NET .
реализовать код, который Axarydax показал в C #, который я пытаюсь перевести для использования в VB.NET.Моя проблема в том, что код создаст мой новый текстовый файл, но он не запишет в него ни одной строки из другого текстового файла и просто оставит его пустым.Я думаю, что моя проблема с оператором цикла while
, но я не уверен.Вот что у меня есть:
Private Sub submitButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles submitButton.Click
Dim trackname As String
Dim fso
fso = CreateObject("Scripting.FileSystemObject")
trackname = TrackComboBox.Text
Dim fileName As String = "C:\Papyrus\NASCAR3\tracks\" + trackname + "\" + trackname + ".txt"
Dim newfile As String = "C:\Papyrus\NASCAR3\tracks\" + trackname + "\" + "copy.txt"
If System.IO.File.Exists(fileName) Then
Dim objReader As New System.IO.StreamReader(fileName, True)
Dim objWriter As New System.IO.StreamWriter(newfile, False)
Dim line
'write back
While (line = objReader.ReadToEnd() <> Nothing)
If (line.StartsWith("RELS")) Then
objWriter.WriteLine(relstTextBox.Text)
Else
objWriter.WriteLine(line)
End If
End While
objReader.Close()
objWriter.Close()
Else
MessageBox.Show("Could not find " + trackname + " track text file sucessfully")
End If
End Sub