0
我有同樣的問題,Niphoet在堆棧溢出問題Overwrite a specific line in a text file using VB.NET。從文本文件讀取和寫入specfic行
我想實現的是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
好的,我試過了,我仍然得到正在創建的新文件,但只是一個空白文件。我還有什麼做錯了?我也從Dim objReader As New System.IO.StreamReader(fileName)中取消了真正的理由,因爲我意識到我不需要它。代碼對我有意義,我不明白爲什麼它不寫入文件 – user877806
您的while循環條件存在問題,我解決了這個問題,請查看我粘貼在tansk上面的代碼 – Waqas
它工作正常!非常感謝!我嘗試了幾個小時來完成這項工作! – user877806