|
bool __fastcall TfrmMain::GetFullFilePath(AnsiString sTargetDir)
{
//지정된 디렉토리 이름에 이하 모든 파일들의 풀패스를 구한다.
bool ret = true;
String strPath = sTargetDir+"\\";
String Lfilename;
StringList m_FilePaths;
WIN32_FIND_DATA filedata;
HANDLE filehandle = FindFirstFile((strPath + "*.*").c_str(),&filedata);
if(filehandle != INVALID_HANDLE_VALUE) {
do
{
Lfilename = strPath+filedata.cFileName;
if( filedata.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY )
{
if( String(filedata.cFileName) != "." && String(filedata.cFileName) != "..")
{
ret=ret&&GetFullFilePath(Lfilename);
}
}
else
{
//파일의 전체 패스 얻기
String strExten;
ret=ret&& FileExists(Lfilename);
strExten = ExtractFileExt(Lfilename);
// 어떤 확장자인가~ 알아보세
if( strExten.UpperCase() == ".JPG" || strExten.UpperCase() == ".JPEG" )
m_FilePaths->Add(Lfilename);
}
}while(FindNextFile(filehandle,&filedata));
FindClose(filehandle);
}
return ret;
}
패스 경로를 입력 받아 그 이하에 모든 파일을 검색하는 함수입니다.
참고하세요~
|