基本上我想创建一个文件,如果不存在然后写入消息.
if (!File.Exists(filePath + fileName))
File.Create(filePath + fileName);
StreamWriter sr = new StreamWriter(filePath + fileName,false);
Run Code Online (Sandbox Code Playgroud)
如何处理这个错误?
该进程无法访问文件'c:\ blahblah',因为它正由另一个进程使用.
Mat*_*zer 17
File.Create
打开一个FileStream
(http://msdn.microsoft.com/en-us/library/d62kzs03.aspx).
由于您没有处置它,文件将保持锁定状态,并且由于这种情况,如果从其他句柄(即其他句柄FileStream
或整体StreamWriter
)执行,则后续对文件的访问将失败.
此代码演示了如何使用以下IDisposable
对象FileStream
:
if (!File.Exists(filePath + fileName))
{
File.Create(filePath + fileName).Dispose();
using(StreamWriter sr = new StreamWriter(filePath + fileName,false))
{
}
}
Run Code Online (Sandbox Code Playgroud)