2014-01-23 85 views
-2

我有一個代碼,我想關閉這裏的代碼的功能是代碼:如何在c#中結束函數其他進程使用的文件?

Writer writetag = new Writer(@C:\Users\user1\Documents\mytext.txt); 
writetag.Position = 0; 
writetag.WriteString(textBox5.Text); 

我想以後我保存文本我想用文件中的另一個函數

我嘗試添加回報;在代碼的結束,但它不工作

請幫助

,因爲當我在同一個程序

使用文件中的另一功能是給我的錯誤,並說:所使用的文件由另一個程序

我認爲是因爲保存功能使用的文件。

謝謝

+2

之前由於馬格努斯'答案是正確的,你應該把它標記爲正確的,所以其他人很容易知道 –

回答

0

你將不得不與任using(){}塊關閉編寫(自動部署在退出的對象)或手動調用作家的close方法這樣writer.Close()您的函數退出

1

您需要關閉Writer

using(Writer writetag = new Writer(@C:\Users\user1\Documents\mytext.txt)) 
{ 
    writetag.Position = 0; 
    writetag.WriteString(textBox5.Text); 
} 
+0

謝謝你的男人,你已經幫助我很多謝謝,並感謝快速回復 – user3227682

0

我假設Writer實際上是StreamWriter

有了這個假設,您必須在另一個進程訪問該文件之前Close(),StreamWriter。更好的是,你可以使用一個using陳述來確保你的文件一旦失去範圍就會被關閉。

using(var writeTag = new StreamWriter(@"C:\Users\user1\Documents\mytext.txt")) 
{ 
    // writeTag.BaseStream.Position = 0; // Not needed and does nothing... 
    writeTag.Write(textBox5.Text); 
} 
相關問題