0

我的程序需要一些帮助。我想重写 .txt 文件中的数据,但出现错误:

该进程无法访问文件“C:\Users\AARVIII\Documents\Visual Studio 2010\Projects\PROJECT\WindowsApplication3\bin\Debug\ORDERS\aa.txt”,因为它正被另一个进程使用。

这是代码:

Sub WRITEDATA()

    Dim write As New System.IO.StreamWriter("ORDERS\" & TBFNAME.Text + "" + TBLNAME.Text & ".txt", False)
    write.WriteLine(TBFNAME.Text)
    write.WriteLine(TBLNAME.Text)
    write.WriteLine(TBEADD.Text)
    write.WriteLine(TBEADD2.Text)
    write.WriteLine(TBADDRESS.Text)
    write.WriteLine(TBCONTACT.Text)
    write.close()

End Sub

我使用 StreamReader 来获取已经放入该文本文件中的数据。请帮我弄清楚如何终止该进程,以便我可以重写我的数据。

4

1 回答 1

0

您的应用程序(在另一个线程上?)很可能是罪魁祸首。首先,为确保释放资源,请确保将代码包装在 using 块中:

  Using Dim write As New System.IO.StreamWriter("ORDERS\" & TBFNAME.Text + "" + TBLNAME.Text & ".txt", False)
        write.WriteLine(TBFNAME.Text)
        write.WriteLine(TBLNAME.Text)
        write.WriteLine(TBEADD.Text)
        write.WriteLine(TBEADD2.Text)
        write.WriteLine(TBADDRESS.Text)
        write.WriteLine(TBCONTACT.Text)
  End Using

此外,您可能希望查看此线程:.NET Asynchronous stream read/write

于 2013-04-02T19:12:51.507 回答