eVC實現文件遍歷查找<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
作者:彭學周(Favory.Peng)
要實現文件的查找在VC6.0中我們可以使用CFileFind類來幫助完成,但在eVC下卻沒有這樣的類可供使用;
在eVC下我們可以使用系統API中提供的FindFirstFile和FindNextFile來實現文件夾中的文件遍歷查找,找尋到我們需要的文件;
實例代碼:
- //功能:實現語言包ini文件的查找
- WIN32_FIND_DATA lpFindFileData;
- HANDLE hFile = INVALID_HANDLE_VALUE;
- bool bFound = false;
- CString szValue = L"";
- CString szFilePath = L"";
- hFile=FindFirstFile(g_szCurPath + L"Language//*.ini",&lpFindFileData);
- if(hFile!=INVALID_HANDLE_VALUE)
- {
- do
- {
- szFilePath = g_szCurPath + L"Language//" + lpFindFileData.cFileName;
- if((szValue=CProfile::GetProfileString(szSection,szKey,L"",szFilePath)) != L"")
- {
- if(szValue == szLang)
- {
- g_szLanguagePath = szFilePath;
- bFound = true;
- break;
- }
- }
- } while(FindNextFile(hFile,&lpFindFileData));
- }
- FindClose(hFile);