|
위성류 님이 쓰신 글 :
: win 2000 profesional을 NTFS 포맷으로 설치했습니다.
:
: dos command 상에서 파일 검색 프로그램을 간단히 짜려고 합니다.
:
: 예전의 DOS시절의 C함수 findfist()와 findnext()를 사용해 보니 결과가 이상하게 나오는 군요.
VCL의 FindFirst()와 FindNext()를 쓰세요.
: 제 생각에는 NTFS 포맷이라서 그러지 않을까 싶은데...
파일시스템 포맷과는 상관 없을 겁니다.
: 특정 디렉토리에서 *.cpp 라는 파일을 찾아주는 함수 알려주세요.
우선 TSearchRec 구조체를 알아야 합니다.
자세한 것은 도움말을 참고하세요.
struct TSearchRec {
int Time;
int Size;
int Attr;
AnsiString Name;
int ExcludeAttr;
int FindHandle;
_WIN32_FIND_DATAA FindData; // 좀 더 자세한 정보를 얻으려면 이 구조체 참고...
};
예제 소스코드는 다음과 같습니다.
TSearchRec sr;
int iAttributes = faAnyFile;
if (FindFirst("c:\\test\\*.cpp", iAttributes, sr) == 0) {
do
cout << sr.Name << "\t" << sr.Size / 1024 << endl;
while (FindNext(sr) == 0);
FindClose(sr);
}
|