StreamReader无法完全关闭

问题描述 投票:0回答:1
在StreamReader关闭并处理相同的文件后,让StreamWriter打开撰写文件的麻烦。我对读者和作家有相同的名字,但它给出了相同的问题,因此我将后面的名称更改为“ fileout”。 我至少有十几个(也许还有两打)相关的问题,并尝试了多种代码变体。我写的方式似乎是每个人的最佳实践。

代码

Private Sub ChangeWeekNumberToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ChangeWeekNumberToolStripMenuItem.Click Dim slash As String = "\" drive = "c:\" mainfolder = "new-football" homeLocation = drive & mainfolder & slash Dim filename As String = "CurrentWeek.txt" Dim FileLocation As String = homeLocation & filename Dim line As String = "" Using FileReader As New StreamReader(FileLocation) Try line = FileReader.ReadLine Catch ex As Exception MessageBox.Show("Whoops! An error was encountered. " & vbCrLf & String.Format("Error: {0}", ex.Message)) Finally FileReader.Close() FileReader.Dispose() End Try End Using MsgBox("Current Week Number = " & line, vbOK, "Change CurrentWeek") Dim Answer As String = MsgBox("Do you still wish to change the week number?", vbYesNo, "Question") If Answer = vbYes Then Dim NewWeekNum As String = "" NewWeekNum = InputBox("Enter new week number", "Enter a number from 1 - 18") Using FileReaderOut As New StreamWriter(FileLocation) Try FileReaderOut.Write(NewWeekNum) Catch ex As Exception MessageBox.Show(String.Format("Error:{0}", ex.Message)) Finally FileReaderOut.Close() FileReaderOut.Dispose() End Try End Using MsgBox("Current Week Number has been change to your input value " & NewWeekNum, vbOK, "CurrentWeek Changed") Else MsgBox("Answer is no so no change", vbOK, "Question") End If End Sub

我找出了我问题的答案。在程序的另一个区域中找到了类似的过程,该过程导致文件保持打开状态。
    
vb.net streamreader streamwriter
1个回答
0
投票

© www.soinside.com 2019 - 2025. All rights reserved.