C# 复制目录不释放文件
我直接从以下方面获得此代码: 但是,当我运行这段代码时,我会在sourceDir中的每个文件上抛出一个错误,因为它已经在使用中,所以无法访问。当我退出代码时,很明显没有其他进程正在使用这些文件,所以一定是这段代码导致了问题。有没有办法用这个 任何建议都将不胜感激C# 复制目录不释放文件,c#,file,process,C#,File,Process,我直接从以下方面获得此代码: 但是,当我运行这段代码时,我会在sourceDir中的每个文件上抛出一个错误,因为它已经在使用中,所以无法访问。当我退出代码时,很明显没有其他进程正在使用这些文件,所以一定是这段代码导致了问题。有没有办法用这个 任何建议都将不胜感激 问候。感谢所有的建议-他们引导我找到了答案。我正在重写网页的Render方法,以将其中一个表另存为.html文件。为了显示此表,我需要sourceDir中的文件。但是,表不会立即呈现,因此在第一次调用呈现时,web应用程序会合法地使用这
问候。感谢所有的建议-他们引导我找到了答案。我正在重写网页的Render方法,以将其中一个表另存为.html文件。为了显示此表,我需要sourceDir中的文件。但是,表不会立即呈现,因此在第一次调用呈现时,web应用程序会合法地使用这些文件。我发布的代码工作得很好。感谢所有的建议-他们引导我找到了答案。我正在重写网页的Render方法,以将其中一个表另存为.html文件。为了显示此表,我需要sourceDir中的文件。但是,表不会立即呈现,因此在第一次调用呈现时,web应用程序会合法地使用这些文件。我发布的代码工作正常。当代码未运行时,您是否能够手动复制文件?当代码未运行时,我可以复制/移动/删除文件。是什么程序创建文件的?是同一个程序吗?@BenVoigt:这些文件都是运行时未生成的图像。它们是很久以前创建并保存到sourceDir的。您是否已将reportdir设置为????当代码未运行时,您是否能够手动复制文件?当代码未运行时,我可以复制/移动/删除文件。什么程序创建文件?是同一个程序吗?@BenVoigt:这些文件都是运行时未生成的图像。它们是很久以前创建并保存到sourceDir的。您是否已将reportdir设置为????
string sourceDir = currDir + "\\" + "Trends";
string targetDir = currDir + "\\" + reportDir + "\\" + "Trends";
if (Directory.Exists(sourceDir))
{
string[] files = Directory.GetFiles(sourceDir);
foreach (string file in files)
{
string fileName = Path.GetFileName(file);
string targetFile = Path.Combine(targetDir, fileName);
File.Copy(file, targetFile, true);
}
}