2010-03-22 60 views

回答

0

基本上你会使用

var files = Directory.GetFiles(originalFolder,"*.*",SearchOption.AllDirectories) 

得到你想要复制所有文件,然后通过

Directory.Create(destinationFolder) 

和环比原来的文件名创建目标目录(在文件),使用的FileInfo类来获得原始文件的路径,File.Copy()将文件复制到其新位置。 所有这些类都在System.IO命名空间中。

3
private static bool CopyDirectory(string SourcePath, string DestinationPath, bool overwriteexisting) 
     { 
      bool ret = true; 
      try 
      { 
       SourcePath = SourcePath.EndsWith(@"\") ? SourcePath : SourcePath + @"\"; 
       DestinationPath = DestinationPath.EndsWith(@"\") ? DestinationPath : DestinationPath + @"\"; 

       if (Directory.Exists(SourcePath)) 
       { 
        if (Directory.Exists(DestinationPath) == false) 
         Directory.CreateDirectory(DestinationPath); 

        foreach (string fls in Directory.GetFiles(SourcePath)) 
        { 
         FileInfo flinfo = new FileInfo(fls); 
         flinfo.CopyTo(DestinationPath + flinfo.Name, overwriteexisting); 
        } 
        foreach (string drs in Directory.GetDirectories(SourcePath)) 
        { 
         DirectoryInfo drinfo = new DirectoryInfo(drs); 
         if (CopyDirectory(drs, DestinationPath + drinfo.Name, overwriteexisting) == false) 
          ret = false; 
        } 
        Directory.CreateDirectory(DI_Target + "//Database"); 
       } 
       else 
       { 
        ret = false; 
       } 
      } 
      catch (Exception ex) 
      { 
       ret = false; 
      } 
      return ret; 
     } 
+1

看起来这是一个额外的行'Directory.CreateDirectory( DI_Target +“//数据库”);' – vicentedealencar 2015-07-23 16:40:08

相关问题