C 遞迴方法遍歷目錄及子目錄

2021-06-28 09:02:06 字數 754 閱讀 8359

眾所周知,獲得某一目錄下第一級的所有檔案和資料夾列表,很容易辦到:

directoryinfo di=new directoryinfo(strbasedir);//strbasedir是起始目錄,絕對位址

directoryinfo dia=di.getdirectories();//獲得了所有一級子目錄

fileinfo fia=di.getfiles();//獲得了所有起始目錄下的檔案

要是想獲得某一目錄下的所有檔案和目錄

(包含所有子目錄

),那該怎麼辦呢?目錄都是一層套一層的,我們不能預知某個目錄的深度,只有獲得了父節點,才有可能了解子節點,解決這個問題,只有遞迴這個概念了。

那麼什麼是遞迴呢?請不會

c語言的朋友先去看書吧,我這裡只簡單的說一下我的理解:遞迴就是乙個方法,在這個方法裡面,再次呼叫它本身這個方法,從而描述了某一事物運作的深度

…… - - 

不廢話了,看**吧:

public arraylist al=new arraylist();

//我把arraylist當成動態陣列用,非常好用

public void getalldirlist(string strbasedir)

{  directoryinfo di=new directoryinfo(strbasedir);

directoryinfo dia=di.getdirectories();

for(int i=0;i

C 遍歷子目錄檔案

winform介面設計 放置乙個textbox控制項 命名為 txtpath 兩個按鈕控制項 乙個btnselect,乙個btnstart 乙個顯示檔案列表label控制項 lblfilelist 還有乙個重要的folderbrowserdialog1控制項。1 stringbuilder strf...

c 遍歷目錄下所有子目錄及檔案

include include include include include using namespace std 其實兩個字串連在一起比如string可惜寫成 str1 str2 獲取所有的檔名 void getallfiles string path,vector files else 如果...

linux遍歷目錄及其子目錄

1 在linux下遍歷某一目錄下內容linux下歷遍目錄的方法一般是這樣的 2 開啟目錄 讀取 關閉目錄 4 include 5 dir opendir const char dirname 6 struct dirent readdir dir dirp 7 int closedir dir di...