c 遍歷資料夾深度 C 遍歷資料夾獲取資料夾大小

2021-10-13 14:04:42 字數 1317 閱讀 7938

c#遍歷資料夾獲取資料夾大小

都需要引入system.io這個命名空間

第一種方法:

public static long getdirectorylength(string dirpath)

//判斷給定的路徑是否存在,如果不存在則退出

if (!directory.exists(dirpath))

return 0;

long len = 0;

//定義乙個directoryinfo物件

directoryinfo di = new directoryinfo(dirpath);

//通過getfiles方法,獲取di目錄中的所有檔案的大小

foreach (fileinfo fi in di.getfiles())

len += fi.length;

//獲取di中所有的資料夾,並存到乙個新的物件陣列中,以進行遞迴

directoryinfo dis = di.getdirectories();

if (dis.length > 0)

for (int i = 0; i < dis.length; i++)

len += getdirectorylength(dis[i].fullname);

return len;

第二種方法

也是利用遞迴的思想,只不過是通過file類的exits方法來判斷

所給路徑中所對應的是否為檔案

//也是利用遞迴的思想,只不過是通過file類的exits方法來判斷

//所給路徑中所對應的是否為檔案

public static long filesize(string filepath)

long temp = 0;

//判斷當前路徑所指向的是否為檔案

if (file.exists(filepath) == false)

string str1 = directory.getfilesystementries(filepath);

foreach (string s1 in str1)

temp += filesize(s1);

else

//定義乙個fileinfo物件,使之與filepath所指向的檔案向關聯,

//以獲取其大小

fileinfo fileinfo = new fileinfo(filepath);

return fileinfo.length;

return temp;

其實刪除資料夾的思想與這個是一樣的,設定要簡單很多,

只要簡單的判斷一下當前的是檔案還是資料夾,如果是檔案則刪除.是資料夾則遞迴

C 遍歷資料夾

下面是一段用於遍歷資料夾內的指定型別檔案的程式 c 遍歷資料夾 author www.icvpr.com blog include include include using namespace std int main int argc,char argv 2.迴圈查詢 do sprintf fi...

c 遍歷資料夾

link 編寫程式遍歷資料夾及其子資料夾下所有檔案,並輸出到標準輸出流或者檔案流。1.先考慮在單層目錄下,遍歷所有檔案。以c windows為例 用到資料結構 finddata t,檔案資訊結構體的指標。c struct finddata t 檔案屬性是無符號整數,取值為相應的巨集 a arch 存...

C 遍歷資料夾檔案

一 先介紹乙個結構 win32 find data typedef struct win32 find data dword dwfileattributes 檔案屬性 filetime ftcreationtime 檔案建立時間 filetime ftlastaccesstime 檔案最後一次訪問...