当我尝试写入临时文件时,我一直收到以下错误:
该进程无法访问该文件 'C:\ Users \ jdoe \ AppData \ Local \ Temp \ jdoe.tmp'因为正在使用它 通过另一个过程。
这些是对文件执行任何操作的唯一方法:
private void LoadData(string filePath)
{
if (!File.Exists(filePath))
{
File.Create(filePath);
return;
}
var fileDetails = new FileInfo(filePath);
if (fileDetails.Length > 0)
{
using (var fileStream = new FileStream(filePath, FileMode.Open))
{
// Do stuff...
fileStream.Close();
}
}
}
private void SaveData(string filePath)
{
using (var fileStream = new FileStream(filePath, FileMode.Create))
{
// Do stuff...
fileStream.Close();
}
}
什么是锁定文件?
答案 0 :(得分:0)
结果File.Create(filePath)
返回FileStream
,需要关闭。只需将File.Create()
更改为此<:p>即可消除错误
if (!File.Exists(filePath))
{
File.Create(filePath).Close();
return;
}
答案 1 :(得分:-1)
你必须删除代码的第一个块..
因为你写的时候..如果文件不在那里它会创建文件,或者如果文件已经存在那么它应该附加..