自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

用C#實現(xiàn)文件夾拷貝

開發(fā) 后端
本文主要介紹了用C#實現(xiàn)文件夾拷貝的一個實例,希望對你有幫助,一起來看。

C#中沒有拷貝整個文件夾的方法,最近需要用到,就寫了一個Demo,拿出來跟大家分享一下

主要思想:

1、寫一個拷貝文件夾的函數(shù)CopyFolder,傳入源文件夾路徑和目的文件夾路徑

2、判斷目的文件夾路徑是否存在,如果不存在,創(chuàng)建此文件夾

3、獲取源文件夾下的所有文件,拷貝這些文件到目的文件夾

4、獲取源文件夾下的所有文件夾,循環(huán)調(diào)用CopyFolder(此處利用了遞歸)

代碼:

拷貝文件夾

  1. using System;using System.IO;namespace FolderService{     
  2. public class FolderService      
  3. {          
  4. static void Main(string[] args)          
  5. {              
  6. if (args.Length != 2)              
  7. {                  
  8. Console.WriteLine("請輸入源文件夾地址和目的文件夾地址!");    
  9. return;              
  10. }              
  11. // 判斷源文件夾是否存在              
  12. if (!Directory.Exists(args[0]))            {                  
  13. Console.WriteLine("源文件夾不存在!");     
  14. return;              
  15. }              
  16. // 拷貝文件夾              
  17. FolderService copy = new FolderService();     
  18. string flag = copy.CopyFolder(args[0], args[1]);              
  19. Console.WriteLine(flag);          
  20. }          
  21. /// <summary>          
  22. /// Copy文件夾          
  23. /// </summary>          
  24. /// <param name="sPath">源文件夾路徑</param>          
  25. /// <param name="dPath">目的文件夾路徑</param>          
  26. /// <returns>完成狀態(tài):success-完成;其他-報錯</returns>          
  27. public string CopyFolder(string sPath, string dPath)          
  28. {              
  29. string flag = "success";              
  30. try              
  31. {                  
  32. // 創(chuàng)建目的文件夾                  
  33. if (!Directory.Exists(dPath))             
  34. {                     
  35.  Directory.CreateDirectory  
  36. (dPath);                 
  37.  }                  
  38. // 拷貝文件                  
  39. DirectoryInfo sDir = new DirectoryInfo(sPath);                  
  40. FileInfo[] fileArray = sDir.GetFiles();           
  41. foreach (FileInfo file in fileArray)                {                      
  42. file.CopyTo(dPath + "\\" + file.Name, true);                 
  43.  }                  
  44. // 循環(huán)子文件夾                  
  45. DirectoryInfo dDir = new DirectoryInfo(dPath);                 
  46.  DirectoryInfo[] subDirArray = sDir.GetDirectories();                  
  47. foreach (DirectoryInfo subDir in subDirArray)                 
  48.  {                      
  49. CopyFolder(subDir.FullName, dPath + "//" + subDir.Name);                  
  50. }             
  51.  }             
  52.  catch (Exception ex)              
  53. {                  
  54. flag = ex.ToString();             
  55.  }              
  56. return flag;         
  57.  }      
  58. }} 

測試Dmo:

1、把代碼保存為FolderService.cs,把此cs文件放到H:\Program Files\Microsoft Visual Studio 9.0\VC下(具體根據(jù)VS安裝路徑不同,地址有所不同)

2、打開Visual Studio Tools中的Visual Studio 2008 Command Prompt,把FolderService.cs拖到此Command Prompt中,在路徑最前方加入csc+空格,回車編譯此程序,如下圖:

編譯程序

 

3、可以在目錄H:\Program Files\Microsoft Visual Studio 9.0\VC中看到生成了一個FolderService.exe文件,運行此文件(打開cmd.exe,把FolderService.exe拖到cmd.exe中,加上參數(shù),回車),如下圖:

運行文件

 

4、這時可以看到,E:\test目錄下的文件全部都拷貝到G:\test目錄下了
 

【編輯推薦】

  1. C#簡單游戲外掛制作(以Warcraft Ⅲ為例)
  2. C#控件的閃爍問題解決方法總結(jié)
  3. 淺析C#延遲加載的運行機制和應(yīng)用場景
  4. C#多線程中l(wèi)ock的用法
  5. 用C#實現(xiàn)HTTP協(xié)議下的多線程文件傳輸
責任編輯:于鐵 來源: 博客園
相關(guān)推薦

2009-08-31 12:56:36

C#創(chuàng)建文件夾

2009-08-31 12:31:45

C#創(chuàng)建文件夾

2009-08-12 16:57:28

C#讀取文件夾

2009-09-02 19:22:03

C#遞歸

2009-08-31 10:56:54

C#創(chuàng)建文件夾

2009-08-17 07:55:00

C#文件操作

2024-03-04 10:41:25

C#開發(fā)后端

2009-08-12 17:12:51

C#讀取文件夾

2024-04-01 11:30:57

C#拷貝

2017-11-02 14:19:32

卷影拷貝VSS恢復(fù)文件

2011-04-06 09:30:52

.NET

2009-08-12 11:33:23

C#實現(xiàn)文件下載

2024-09-13 08:27:00

2009-04-20 10:09:46

C#優(yōu)先隊列.NET Framew

2009-12-03 14:10:06

PHP壓縮文件夾

2010-01-21 13:34:56

VB.NET刪除文件夾

2009-08-25 11:10:20

C#編程實現(xiàn)顯示XML

2009-08-18 13:35:06

C#枚舉文件

2010-12-31 13:35:25

文件夾重定向

2014-12-24 09:41:05

x86C#
點贊
收藏

51CTO技術(shù)棧公眾號