我正在尝试从Web下载文件并将其保存在本地,但是我遇到了一个异常:
C#进程无法访问文件“blah”,因为它正在被另一个进程使用。
这是我的代码:
File.Create("data.csv"); // create the file
request = (HttpWebRequest)WebRequest.CreateDefault(new Uri(url));
request.Timeout = 30000;
response = (HttpWebResponse)request.GetResponse();
using (Stream file = File.OpenWrite("data.csv"), // <-- Exception here
input = response.GetResponseStream())
{
// Save the file using Jon Skeet's CopyStream method
CopyStream(input, file);
}
我看到许多其他问题都有相同的异常,但似乎都不适用于此处。有任何帮助吗?
更新:
谢谢回答!删除File.Create(...)
就解决了问题!
关于OpenWrite
的文档,我想提一下:它有点误导人,简要说明如下:
打开一个现有的文件以进行写入。
详细说明如下:
如果文件存在,则在开头打开该文件进行写入。现有文件不会被截断。
更新2.0:
看起来这个差异是在IntelliSense / F1和在线文档之间的。我认为它应该是相同的,因为我允许F1在显示文档时连接到网络。