#include <windows.h> #include <stdio.h> void main() { char InputPath[65535] = "C:\\Program Files\\"; //放要讀取檔案的資料夾路徑到InputPath字串裡 char szDir[65535]; char dir[65535]; WIN32_FIND_DATA FileData; HANDLE hList; sprintf(szDir, "%s\\*", InputPath ); if ( (hList = FindFirstFile(szDir, &FileData))==INVALID_HANDLE_VALUE ) printf("No files be found.\n\n"); else { while (1) { if (!FindNextFile(hList, &FileData)) { if (GetLastError() == ERROR_NO_MORE_FILES) break; } sprintf(dir, "%s\\%s", InputPath, FileData.cFileName); printf("%s\n", dir); } } FindClose(hList); }
作者已經移除這則留言。
回覆刪除你好,請教一下,當我執行程式時,出現了以下的錯誤訊息,我去爬過文,但還是不明白如何解決,可以的話請教教我!
回覆刪除error C2664: 'HANDLE FindFirstFileW(LPCWSTR,LPWIN32_FIND_DATAW)' : 無法將引數 1 從 'char [65535]' 轉換為 'LPCWSTR'
你好,我剛剛找到了一個解決方法了,就是加上這段 CString str(szDir); 讓LPCWSTR轉換過去,謝謝你的程式碼,讓我又學到了,受益良多。
回覆刪除