VC 刪除乙個檔案目錄下的所有檔案以及目錄

2022-05-04 19:12:16 字數 1392 閱讀 2350

1

bool doremovedirectory(cstring chrdirname);23

bool releasedirectory(cstring chrdirname)

4 //

end of civmsvrinfo::releasedirectory()

1415

bool doremovedirectory(cstring chrdirname)

1643

else

4950 strtemp = strdirname + "

\\" +fdata.cfilename;

5152 setfileattributes(strtemp, ~file_attribute_readonly);

53if (!removedirectory(strtemp))

54 result =false;

55else

56 result =true;57}

58else

5968

69 }while(findnextfile(handle,&fdata));

7071 errorcode =getlasterror();

7273

if (errorcode == error_no_more_files)//

空目錄74

7879

if(handle)

80findclose(handle);

8182

return

result;

8384 } //

end of bool preremovedirectory(cstring dirname)

在上述**中

findfirstfile第乙個引數需要乙個路徑,但要寫*.*,表示從所有檔案中找到的第乙個.但寫f:或者f:雙斜槓都返回無效控制代碼.

如果f:\\1.txt 則對特定檔案進行搜尋,返回找到的第乙個

找到的檔案的檔案結構被記錄在win32_find_data結構體裡

findnextfile第乙個引數是findfirstfile的返回值,可以接著上次結果繼續尋找

但注意!!!!

但乙個目錄的檔案被搜尋一遍後,findnextfile返回的win32_find_data結構體將重複找到最後乙個找到的檔案,而不會終止.

讓迴圈結束的方法就是找上一次的報錯碼,然後看有沒有error_no_more_files資訊發生.

hfile的有效與否個人覺得還是取決於第一次的findfirstfile結果,本程式後半段的執行主要還是errorcode!=error_no_more_files在控制.

刪除乙個目錄下的所有檔案,但保留乙個指定文

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 面試題 刪除乙個目錄下的所有檔案,但...

刪除乙個目錄下的所有檔案但保留乙個指定檔案

之前看過oldboy 老男孩 前輩的一篇文章 linux面試題 刪除乙個目錄下的所有檔案,但保留乙個指定檔案 近日終於有機會得以驗證,但與老男孩前輩的文章中具體講的有些不太一樣,故而專門寫一篇文章重新整理這個問題。雖然是同乙個話題,和同一種思路,但細節上有一定的差別。需求 刪除乙個目錄下的所有檔案,...

C 刪除乙個檔案目錄下的所有檔案以及目錄

bool doremovedirectory cstring chrdirname bool releasedirectory cstring chrdirname end of civmsvrinfo releasedirectory bool doremovedirectory cstring ...