簡體   English   中英

寫入和讀取同一文件

[英]Write and read from same file

我一直在尋找一個字符串寫入文件,然后逐行讀取它,但是我總是收到錯誤IOException:在路徑C:... \\ level1.txt上共享沖突。 我在互聯網上看了看,他們說我應該使用相同的流進行讀寫,但是它沒有用,所以我嘗試為每個流創建不同的流,但也沒有用。

FileStream F = new FileStream("level1.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite);
        StreamWriter sw = new StreamWriter(F);
        sw.Write(Gui.codeText.Replace("\n", "\r\n"));
        F.Close();
 FileStream F2 = new FileStream("level1.txt", FileMode.Open, FileAccess.Read);
        StreamReader file = new StreamReader(F2);
        while ((line = file.ReadLine()) != null)
        { ....}

我認為您只需要在read and write使用Using statement

由於StreamWriterStreamReader類繼承了Stream ,后者實現了IDisposable接口,因此該示例可以使用using語句來確保在執行寫入或讀取操作后正確關閉了基礎文件。

using (StreamWriter sw = new StreamWriter(F))
{
      //Write Logic goes here...
}

using (StreamReader file = new StreamReader(F2))
{
     //Read Logc goes here...
}

使用語句:

using語句轉換為三個部分:獲取,使用和處置。 資源的使用隱式包含在一個帶有finally子句的try語句中。 該finally子句處理資源。 如果獲取了空資源,則不會調用Dispose,也不會引發異常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM