楼主的意思是说目录中有子目录存在的情况吧?写了一个方法,尝试用递归调用解决这个问题,不过还没来得及测试,楼主可以试试看……
- private bool copyDirectory(string sourcePath, string objectPath)
- {
- try
- {
- string[] files = Directory.GetFiles(sourcePath);
- foreach (string sourceFile in files)
- {
- string fileName = sourceFile.Substring(sourceFile.LastIndexOf("\\") + 1);
- string objectFile = objectPath + "\\" + fileName;
- if (Directory.Exists(sourceFile))
- {
- //若此路径为子目录,则对自身进行递归调用
- Directory.CreateDirectory(objectFile);
- copyDirectory(sourceFile, objectFile);
- }
- else
- {
- File.Copy(sourceFile, objectFile, true);
- }
- }
- return true;
- }
- catch
- {
- return false;
- }
- }
复制代码 |