新聞中心
C#遞歸的應(yīng)用是可以讓繁瑣的問(wèn)題的變得簡(jiǎn)單可執(zhí)行,那么具體的實(shí)例就是打開(kāi)文件的操作,我們知道獲得某一目錄下第一級(jí)的所有文件和文件夾列表,很容易辦到:

創(chuàng)新互聯(lián)建站是網(wǎng)站建設(shè)專(zhuān)家,致力于互聯(lián)網(wǎng)品牌建設(shè)與網(wǎng)絡(luò)營(yíng)銷(xiāo),專(zhuān)業(yè)領(lǐng)域包括成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、電商網(wǎng)站制作開(kāi)發(fā)、重慶小程序開(kāi)發(fā)公司、微信營(yíng)銷(xiāo)、系統(tǒng)平臺(tái)開(kāi)發(fā),與其他網(wǎng)站設(shè)計(jì)及系統(tǒng)開(kāi)發(fā)公司不同,我們的整合解決方案結(jié)合了恒基網(wǎng)絡(luò)品牌建設(shè)經(jīng)驗(yàn)和互聯(lián)網(wǎng)整合營(yíng)銷(xiāo)的理念,并將策略和執(zhí)行緊密結(jié)合,且不斷評(píng)估并優(yōu)化我們的方案,為客戶提供全方位的互聯(lián)網(wǎng)品牌整合方案!
- DirectoryInfo di=new DirectoryInfo(strBaseDir);//strBaseDir是起始目錄,絕對(duì)地址
- DirectoryInfo[] diA=di.GetDirectories();//獲得了所有一級(jí)子目錄
- FileInfo[] fiA=di.GetFiles();//獲得了所有起始目錄下的文件
要是想獲得某一目錄下的所有文件和目錄(包含所有子目錄),那該怎么辦呢?目錄都是一層套一層的,我們不能預(yù)知某個(gè)目錄的深度,只有獲得了父節(jié)點(diǎn),才有可能了解子節(jié)點(diǎn),解決這個(gè)問(wèn)題,只有遞歸這個(gè)概念了。
C#遞歸的簡(jiǎn)單理解,它就是一個(gè)方法,在這個(gè)方法里面,再次調(diào)用它本身這個(gè)方法,從而描述了某一事物運(yùn)作的深度…… - - 不廢話了,看代碼吧:
C#遞歸實(shí)現(xiàn)代碼
- public ArrayList al=new ArrayList();
- //我把ArrayList當(dāng)成動(dòng)態(tài)數(shù)組用,非常好用
- public void GetAllDirList(string strBaseDir)
- {
- DirectoryInfo di=new DirectoryInfo(strBaseDir);
- DirectoryInfo[] diA=di.GetDirectories();
- for(int i=0;i
- {
- al.Add(diA[i].FullName);
- //diA[i].FullName是某個(gè)子目錄的絕對(duì)地址,把它記錄在ArrayList中
- GetAllDirList(diA[i].FullName);
- //注意:這里使用C#遞歸的方法
- }
- }
最后,如何把所有目錄信息從ArrayList中取出來(lái)呢?如下:
- for(int i=0;i
- {
- textBox1.AppendText(al[i].ToString()+" ");
- //textBox1是容器,拷貝我的代碼,注意要換一個(gè)你自己的容器
- }
C#遞歸方法的應(yīng)用就向你介紹到這里,希望對(duì)你理解和學(xué)習(xí)C#遞歸以及應(yīng)用有所幫助。
當(dāng)前標(biāo)題:C#遞歸的應(yīng)用實(shí)例詳解
當(dāng)前地址:http://fisionsoft.com.cn/article/dpopihp.html


咨詢(xún)
建站咨詢(xún)
