[問題] 關於讀取資料夾下所有檔案名稱

看板C_and_CPP作者 (evilkiss)時間14年前 (2010/04/29 18:10), 編輯推噓1(107)
留言8則, 2人參與, 最新討論串1/1
我是使用vc++ ,win XP 我想寫一個可以讀取指定資料夾中所有檔案檔名的程式 參考之前的文章寫了一個程式如下 可是name="c:*.*"會失敗(會顯示此project資料夾中的檔案 而非c:下的檔案) 但name="e:*.*" or "d:*.*" 或是其他不是在c槽之下的資料夾都會成功 請問我的問題是出在哪裡阿 #include <stdio.h> #include <windows.h> int main() { HANDLE hFindFile; WIN32_FIND_DATA FindFileData; char *name="c:*.*"; hFindFile = FindFirstFile(name, &FindFileData); if (hFindFile==INVALID_HANDLE_VALUE) { printf("find no file\n"); } else { printf("file found\n"); printf("%s\n",&FindFileData.cFileName); } bool bResult = false; char szbuf[100][100] = {0}; int i = 0; while(!bResult) { if (!FindNextFile(hFindFile, &FindFileData)) { bResult = true; system("pause"); return 0; } printf("%s %d\n",&FindFileData.cFileName,i); i++; } system("pause"); return 0; } --

04/19 02:07,
你有權利情緒化
04/19 02:07

04/19 02:10,
傑不一定要堅強
04/19 02:10

04/19 02:38,
但有些事情不能偽裝
04/19 02:38

04/19 02:59,
像五樓射在
04/19 02:59

04/19 03:21,
一二三四樓臉上
04/19 03:21
-- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.124.43.177

04/29 19:29, , 1F
c:\\*.*
04/29 19:29, 1F

04/29 19:30, , 2F
C:*.*會找到目前C:的current folder, 以你的case就會看
04/29 19:30, 2F

04/29 19:30, , 3F
到project start-up的工作目錄(所以合理推測你的程式是
04/29 19:30, 3F

04/29 19:31, , 4F
存在C:....XD) D/E:算是運氣好對了, 保險起見還是用
04/29 19:31, 4F

04/29 19:32, , 5F
"D:\\*.*" 比較好:)
04/29 19:32, 5F

04/29 19:33, , 6F
PS. C:\ 才是C的根目錄; 因為放在""裡所以寫 "C:\\*.*"
04/29 19:33, 6F

04/29 19:42, , 7F
謝謝V大
04/29 19:42, 7F

04/29 19:52, , 8F
不客氣XD
04/29 19:52, 8F
文章代碼(AID): #1BsLijXd (C_and_CPP)