c++ builder 查询一个文件在本地的的完整路径
给一文件的文件名,通过代码查询该文件在本地,也就是电脑盘符中的完整路径,请高人指点,贡献出源码,不胜感激...
[解决办法]
这里抄了别人的一段代码,你看看:
WIN32_FIND_DATA FileData; HANDLE hSearch; DWORD dwAttrs; char szDirPath[] = "c:\\TEXTRO\\"; char szNewPath[MAX_PATH]; char szHome[MAX_PATH]; BOOL fFinished = FALSE; // Create a new directory. if (!CreateDirectory(szDirPath, NULL)) { ErrorHandler("Couldn't create new directory."); } // Start searching for .TXT files in the current directory. hSearch = FindFirstFile("*.txt", &FileData); if (hSearch == INVALID_HANDLE_VALUE) { ErrorHandler("No .TXT files found."); } // Copy each .TXT file to the new directory // and change it to read only, if not already. while (!fFinished) { lstrcpy(szNewPath, szDirPath); lstrcat(szNewPath, FileData.cFileName); if (CopyFile(FileData.cFileName, szNewPath, FALSE)) { dwAttrs = GetFileAttributes(FileData.cFileName); if (!(dwAttrs & FILE_ATTRIBUTE_READONLY)) { SetFileAttributes(szNewPath, dwAttrs | FILE_ATTRIBUTE_READONLY); } } else { ErrorHandler("Couldn't copy file."); } if (!FindNextFile(hSearch, &FileData)) { if (GetLastError() == ERROR_NO_MORE_FILES) { MessageBox(hwnd, "No more .TXT files.", "Search completed.", MB_OK); fFinished = TRUE; } else { ErrorHandler("Couldn't find next file."); } }} // Close the search handle. if (!FindClose(hSearch)) { ErrorHandler("Couldn't close search handle."); }