我收到此错误:该进程无法访问该文件(...),因为它正被另一个进程使用。我试过用
File.WriteAllText
;
StreamWriter sw = new StreamWriter(myfilepath);
sw.Write(mystring);
sw.Close();
sw.Dispose();
;
using (FileStream fstr = File.Create(myfilepath))
{
StreamWriter sw = new StreamWriter(myfilepath);
sw.Write(mystring);
sw.Close();
sw.Dispose();
fstr.Close();
}
我要做的就是访问一个文件,在上面写,然后关闭它。我可能会犯一个愚蠢的错误,但我想了解我做错了什么以及为什么。如何确保文件已关闭并且不会再次导致此错误。
到目前为止,在答案的帮助下,我做到了:
using (FileStream fstr = File.Open(myfilepath,FileMode.OpenOrCreate,FileAccess.ReadWrite))
{
StreamWriter sw = new StreamWriter(fstr);
sw.Write(mystring);
sw.Close();
}
这似乎更好,因为如果我在第二次访问该页面时尝试访问另一个文件,它似乎会关闭/停止我的文件进程。但是,如果我再次尝试访问同一个文件,它会再次给我错误。