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

C#遞歸的應用實例詳解

開發(fā) 后端
C#遞歸的應用來解決文件的逐級展開是十分有實用性的操作,那么具體的執(zhí)行是怎么樣子的呢?讓我們看看這里向你展示的實例實現。

C#遞歸的應用是可以讓繁瑣的問題的變得簡單可執(zhí)行,那么具體的實例就是打開文件的操作,我們知道獲得某一目錄下第一級的所有文件和文件夾列表,很容易辦到:

  1. DirectoryInfo di=new DirectoryInfo(strBaseDir);//strBaseDir是起始目錄,絕對地址  
  2.  
  3. DirectoryInfo[] diA=di.GetDirectories();//獲得了所有一級子目錄  
  4.  
  5. FileInfo[] fiA=di.GetFiles();//獲得了所有起始目錄下的文件  

要是想獲得某一目錄下的所有文件和目錄(包含所有子目錄),那該怎么辦呢?目錄都是一層套一層的,我們不能預知某個目錄的深度,只有獲得了父節(jié)點,才有可能了解子節(jié)點,解決這個問題,只有遞歸這個概念了。

C#遞歸的簡單理解,它就是一個方法,在這個方法里面,再次調用它本身這個方法,從而描述了某一事物運作的深度…… - - 不廢話了,看代碼吧:

C#遞歸實現代碼

  1. public ArrayList al=new ArrayList();  
  2.  
  3. //我把ArrayList當成動態(tài)數組用,非常好用  
  4.  
  5. public void GetAllDirList(string strBaseDir)  
  6.  
  7. {  
  8.  
  9. DirectoryInfo di=new DirectoryInfo(strBaseDir);  
  10.  
  11. DirectoryInfo[] diA=di.GetDirectories();  
  12.  
  13.   for(int i=0;i<diA.Length;i++)  
  14.      
  15. {  
  16.  
  17.  al.Add(diA[i].FullName);  
  18.  
  19. //diA[i].FullName是某個子目錄的絕對地址,把它記錄在ArrayList中  
  20.  
  21.  GetAllDirList(diA[i].FullName);  
  22.  
  23. //注意:這里使用C#遞歸的方法  
  24.  
  25. }  
  26.  
  27. }  

最后,如何把所有目錄信息從ArrayList中取出來呢?如下:

  1. for(int i=0;i<al.Count;i++)  
  2.  
  3. {  
  4.  
  5.  textBox1.AppendText(al[i].ToString()+" ");  
  6.  
  7. //textBox1是容器,拷貝我的代碼,注意要換一個你自己的容器  
  8.  
  9. }  

C#遞歸方法的應用就向你介紹到這里,希望對你理解和學習C#遞歸以及應用有所幫助。

【編輯推薦】

  1. C#關機代碼的實現淺析
  2. C#程序設計關閉Windows窗體淺析
  3. C#程序設計獲取系統(tǒng)信息的Windows窗體淺析
  4. C#遞歸算法理解的實例分析
  5. C#遞歸思路的使用實例詳解
責任編輯:仲衡 來源: bokelife.com
相關推薦

2009-09-02 18:44:19

C#遞歸

2009-09-03 09:16:35

C#遞歸函數

2009-09-11 12:31:52

C#實例詳解TypeConvert

2009-09-02 11:18:10

C#動態(tài)數組

2009-08-28 12:47:30

C#靜態(tài)方法應用

2009-09-04 18:09:12

C# Main函數

2009-09-01 15:47:20

C#取整函數

2009-09-11 13:03:48

Scope屬性

2009-09-03 18:55:08

C#判斷瀏覽器

2009-09-02 18:39:34

C#遞歸算法

2009-09-02 17:12:06

C#關機代碼

2009-08-20 11:01:51

C#操作內存

2009-08-18 10:14:19

C#插件構架

2009-08-17 17:49:20

C# 枚舉

2009-09-03 10:52:41

C#遞歸樹

2024-10-21 07:05:14

C#特性語言

2024-07-10 08:31:59

C#特性代碼

2009-08-18 17:05:08

C#操作xml文件

2009-08-28 13:12:56

C#反射實例C#反射

2009-08-21 10:13:02

C#異步初步
點贊
收藏

51CTO技術棧公眾號