国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

用VisualC++6.0遞歸查找目錄樹

2019-11-17 05:30:22
字體:
來源:轉載
供稿:網友

  在SDI項目內,通過使用CFileDialog和CFileFind類,不僅可以實現Windows桌面上現有的查找功能,而且可以靈活擴展查找條件.例如,下面的程序將在VisualC++6.0的Output窗口內逐行輸出c:/windows下所有長度小于500字節的只讀文件:

#include < direct.h > /*含有
_getcwd,_chdir原型*/
void f0(){
char x[256],y[256];
CFileDialog fd(TRUE);
/*用TRUE值構造"File Open"對話框*/
_getcwd(x,256); /*
當前工作目錄存入x數組*/

if (fd.DoModal()==IDOK){
/*在CfileDialog對話過程中,
先選定c:/windows目錄,
再選定其下一普通文件,如Notepad.exe,
或輸入一不存在的文件,如f0.non*/
_getcwd(y,256);
/*當前工作目錄c:/windows存入y數組*/
f1(y); /*用y內容調用f1函數*/
}
_chdir(x); /*當前工作目錄置回x內容*/
}

void f1(CString x){
BOOL b;CFileFind f;
/*考慮到遞歸,只能使用局部變量*/
_chdir(x); b=f.FindFile("*.*");
/*當前工作目錄置成實參x,
然后查其下所有文件*/
while(b){
b=f.FindNextFile();
if (f.IsDirectory()){
/*當前文件是目錄*/
if (!f.IsDots())
{ f1(f.GetFilePath());
/*目錄文件非"."和"..",
則用全路徑調用自身*/
}
}
else
if (f.IsReadOnly()&&f.GetLength
()< 500){
afxDump< < "/n";
afxDump< < f.GetFilePath();
/*輸出長度小于500字節的只讀文件的文件*/
}
   }
}
   待程序正常結束后,Output窗口將顯示執行結果.另外,經用CmemoryState類檢查,已證實此段程序未導致內存泄漏.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鄯善县| 隆子县| 大丰市| 仁怀市| 且末县| 墨江| 常山县| 大方县| 镶黄旗| 双城市| 珲春市| 平顶山市| 穆棱市| 武山县| 泰和县| 丘北县| 汪清县| 鄂伦春自治旗| 沁阳市| 嘉祥县| 新晃| 德保县| 南昌县| 郁南县| 高州市| 从化市| 平南县| 玉山县| 丰原市| 盐边县| 临桂县| 靖边县| 无为县| 乳源| 诸暨市| 通辽市| 天等县| 田阳县| 会东县| 富锦市| 锡林浩特市|