清單文件夾我知道,這很可能是重複的。但是,我正在努力實際得到一個工作答案。目錄中的C +
我所試圖做的是列表中的所有的工作目錄中的文件夾。下面是一些代碼,我已經適應了從微軟站點(http://msdn.microsoft.com/en-us/library/windows/desktop/aa365200(v=vs.85).aspx)
這使輸出:
Filname:52428
我已經檢查的文件夾 - 有,我想列出'Vidoe' 'John' 'David'
我三個文件夾我不確定它爲什麼打印出上面的結果。
我不想使用升壓 - 也沒有下載任何第三方plugings。
int main(int argc, char** argv)
{
HANDLE hFind = INVALID_HANDLE_VALUE;
WIN32_FIND_DATA ffd;
//The Directory where the .exe is run from.
hFind = FindFirstFile(TEXT(".\\Players\\*"), &ffd);
do
{
Sleep(1000);
bool isDirectory = ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY;
if(isDirectory)
{
cout << "DirectoryName: " << *ffd.cFileName << endl;
}
else
{
cout << "FileName: " << *ffd.cFileName << endl;
}
}while(FindNextFile(hFind, &ffd) != 0);
FindClose(hFind);
}
編輯: 我沒有,我想這樣做,具體的方式,所有我想要做的是輸出目錄中的文件夾 - 我不關心它是如何做。
得到了錯誤:文件名:????????????????????????????????????????? ????????????????????????????? ??????????????????????????????????????????????????????????????????????????????????????????????? ??????????????????????????????? ??????????????????????????????????????????????????????????????????????????????????????????????? ??????????????????????????????? ??????????????????????????????????????????????????????????????????????????????????????????????? ?????? =?G ??? =?g☺ 按任意鍵繼續。 。 。 – KingJohnno
在繼續之前,您應該檢查hFind的值。我敢打賭,你找回了INVALID_HANDLE_VALUE,因爲沒有發現任何東西。 – drescherjm
你在Visual Studio Debugger裏面運行這個嗎?請記住,調試的默認應用程序路徑不是包含可執行文件的文件夾。它是包含解決方案文件的文件夾。 – drescherjm