2016-10-22 38 views
1

我有這樣的代碼在C#中使用的一段代碼關閉過程

path = textBox1.Text; 
dir = @"C:\htmlcsseditor\" + path + ".html"; 
System.IO.File.Create(dir); 

但是當我嘗試在調試說我該文件是由另一個進程使用的文件編寫;我如何關閉使用該文件的進程? 由於

+0

查看我的答案,並告訴我是否有不清楚的地方 – mybirthname

回答

0

你應該處置你的文件,因爲它保持打開狀態。

path = textBox1.Text; 
dir = @"C:\htmlcsseditor\" + path + ".html"; 
using (System.IO.File.Create(dir)) {} // or System.IO.File.Create(dir).Dispose() 
0

通過這種方法創建的FileStream對象具有無的默認文件共享 值;沒有其他進程或代碼可以訪問創建的文件 ,直到原始文件句柄關閉。

using (FileStream fs = File.Create(path)) 
{ 
    Byte[] info = new UTF8Encoding(true).GetBytes("This is some text in the file."); 
    // Add some information to the file. 
    fs.Write(info, 0, info.Length); 
} 

在這裏,你應該如何創建文件,並寫入文件中的一些文本。當您離開使用區塊時,您正在關閉該過程。在使用結束時稱爲Dispose()這是釋放資源的方法。