如何将子文件夹从文件夹复制到另一个文件夹
本文关键字:文件夹 复制 另一个 | 更新日期: 2023-09-27 18:31:06
我正在应用程序中处理 C#.net 控制台应用程序,我有两个文件夹1)D:'Working Projects'Alticore'AssetXML'LIS, 2)D:'Working Projects'Alticore'AssetXMLProcessed
。
现在我只想从D:'Working Projects'Alticore'AssetXML'LIS to D:'Working Projects'Alticore'AssetXMLProcessed.
复制子文件夹(即LIS)
就像"D:'Working Projects'Alticore'AssetXMLProcessed/LIS"
这样的xaclty.
的任何解决方案我将不胜感激。
在Windows XP下,它将是:
move "c:'documents and settings'%USERNAME%'desktop'TZClock" "C:'documents and settings'%USERNAME%'Start Menu'Programs'TZClock"
在 Windows 7 上,它是以下内容(尽管我现在无法对此进行测试):
move "c:'users'%USERNAME%'desktop'TZClock" "C:'ProgramData'Microsoft'Windows'Start Menu'Programs'TZClock"
您可以执行此过程或其他操作创建新文件复制所有数据。
还有一个选项,你可以做的是有
File.Copy(src, dest) 方法在 System.IO 命名空间中你也可以使用它。
这应该可以完成这项工作
public static void Copy(String srcPath, String destPath)
{
DirectoryInfo srcDirectory = new DirectoryInfo(srcPath);
if (!srcDirectory.Exists) return;
// Creates LIS directory
destPath = Path.Combine(Path.Combine(destPath, srcDirectory.Name));
Directory.CreateDirectory(destPath);
// Creates all sub directories from srcPath to your destPath
foreach (String dirPath in Directory.GetDirectories(srcPath, "*", SearchOption.AllDirectories))
Directory.CreateDirectory(dirPath.Replace(srcPath, destPath));
// Copies all files from all sub directories from srcPath to your destPath
foreach (String copyPath in Directory.GetFiles(srcPath, "*.*", SearchOption.AllDirectories))
File.Copy(copyPath, copyPath.Replace(srcPath, destPath), true);
}
用法:
Copy(@"D:'Working Projects'Alticore'AssetXML'LIS", @"D:'Working Projects'Alticore'AssetXMLProcessed")
如果您不想复制子文件夹或其文件,请删除不需要的。顺便说一下,它将覆盖复制的文件。