(File.Copy) mscorlib.dll 中未处理 'System.IO.IOException'
(File.Copy) Unhandled 'System.IO.IOException' in mscorlib.dll
我在复制文件时遇到问题,如果目标目录中存在文件,则覆盖它,否则什么都不做。但我收到此错误消息:
mscorlib.dll 中发生了 'System.IO.IOException' 类型的未处理异常
进程无法访问文件 [PATH]/TaskRepository.cs
因为它正在被另一个进程使用。
我什至几个小时都没有找到解决方案。在 Whosebug 上寻找其他主题,但无法弄清楚。我的代码在这里
public void EditFiles(List<string> OriginalFiles, List<string> TargetFiles)
{
foreach (var original in OriginalFiles)
{
int i = 0;
int index = original.LastIndexOf(@"\");
if (original.Substring(index).Contains("TaskRepository.cs"))
{
while (i < TargetFiles.Count)
{
if (TargetFiles[i].Contains("TaskRepository.cs") == true)
{
File.Copy(original, TargetFiles[i], true);
}
i++;
}
}
}
}
我会尝试将您要使用的文件复制到一个单独的文件夹中。 Visual Studio 很可能是罪魁祸首,但也可能是锁定文件的任何东西。
Visual Studio locking files while debugging
您是否在同一目录中使用文件复制,请检查此...或者还有另一种称为 copyto 的方法,您也可以使用它
FileInfo fi = new FileInfo(@"c:\onefile.txt");
fi.CopyTo(@"d:\anotherfile.txt", true); // existing file will be overwritten
你的文件好像没有复制到目录下我猜你的目标路径太长了,找不到
我在复制文件时遇到问题,如果目标目录中存在文件,则覆盖它,否则什么都不做。但我收到此错误消息:
mscorlib.dll 中发生了 'System.IO.IOException' 类型的未处理异常 进程无法访问文件 [PATH]/TaskRepository.cs 因为它正在被另一个进程使用。
我什至几个小时都没有找到解决方案。在 Whosebug 上寻找其他主题,但无法弄清楚。我的代码在这里
public void EditFiles(List<string> OriginalFiles, List<string> TargetFiles)
{
foreach (var original in OriginalFiles)
{
int i = 0;
int index = original.LastIndexOf(@"\");
if (original.Substring(index).Contains("TaskRepository.cs"))
{
while (i < TargetFiles.Count)
{
if (TargetFiles[i].Contains("TaskRepository.cs") == true)
{
File.Copy(original, TargetFiles[i], true);
}
i++;
}
}
}
}
我会尝试将您要使用的文件复制到一个单独的文件夹中。 Visual Studio 很可能是罪魁祸首,但也可能是锁定文件的任何东西。
Visual Studio locking files while debugging
您是否在同一目录中使用文件复制,请检查此...或者还有另一种称为 copyto 的方法,您也可以使用它
FileInfo fi = new FileInfo(@"c:\onefile.txt");
fi.CopyTo(@"d:\anotherfile.txt", true); // existing file will be overwritten
你的文件好像没有复制到目录下我猜你的目标路径太长了,找不到