[C++] 纯文本查看 复制代码
typedef struct _WIN32_FIND_DATA {
DWORD dwFileAttributes;
FILETIME ftCreationTime;
FILETIME ftLastAccessTime;
FILETIME ftLastWriteTime;
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD dwReserved0;
DWORD dwReserved1;
TCHAR cFileName[MAX_PATH];
TCHAR cAlternateFileName[14];
} WIN32_FIND_DATA, *PWIN32_FIND_DATA, *LPWIN32_FIND_DATA;
[C++] 纯文本查看 复制代码
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
WIN32_FIND_DATA findData;
HANDLE searchHandle;
searchHandle = FindFirstFile(_T("*"), &findData);
if (searchHandle == INVALID_HANDLE_VALUE) {
_tprintf(_T("Error opening Search Handle."));
exit (EXIT_FAILURE);
}
do {
_tprintf(_T("%s\n"), findData.cFileName);
} while (FindNextFile (searchHandle, &findData));
FindClose(searchHandle);
return 0;
}
[C++] 纯文本查看 复制代码
#include "stdafx.h"
DWORD TraverDir (LPTSTR szPath)
{
setlocale(LC_ALL, "chs");
WIN32_FIND_DATA FindFileData;
HANDLE hListFile;
TCHAR szFilePath[MAX_PATH];
lstrcpy (szFilePath, szPath);
lstrcat (szFilePath, TEXT("\\*"));
hListFile = FindFirstFile (szFilePath, &FindFileData);
if (hListFile == INVALID_HANDLE_VALUE) {
_tprintf (TEXT("错误:%d"), GetLastError());
return 1;
} else {
do {
_tprintf (TEXT("%s"), FindFileData.cFileName); //
if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_ENCRYPTED) {
_tprintf (TEXT("\t\t<加密> "));
}
if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN) {
_tprintf (TEXT("\t\t<隐藏> "));
}
if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) {
_tprintf (TEXT("\t\t<DIR>"));
}
_tprintf (TEXT("\n"));
} while (FindNextFile(hListFile, &FindFileData));
}
}
int _tmain(int argc, _TCHAR* argv[])
{
setlocale(LC_ALL, "chs");
if (argc == 2) {
TraverDir(argv[1]);
} else {
TCHAR szCurrentPath[MAX_PATH];
GetCurrentDirectory(MAX_PATH, szCurrentPath);
TraverDir(szCurrentPath);
}
return 0;
}
[Plain Text] 纯文本查看 复制代码
if (lstrcmp(FindFileData.cFileName, TEXT(".")) == 0 || lstrcmp(FindFileData.cFileName, TEXT("..")) == 0) { continue; }