Click to See Complete Forum and Search --> : Questions about file system


ALEXSNIPER
May 17th, 2010, 03:27 PM
i have questions about file system

the first one is how i can list all file in directory

i tried to do this but it lists directories only not files



void ListFiles(TCHAR szDirectory[])
{
WIN32_FIND_DATA findData;
HABDLE hfind;
BOOL bMoreFiles=TRUE;
hFind=FindFirstFile(szDirectory,&findData);


if(findData.dwFileAttributes ==FILE_ATTRIBUTE_ARCHIVE)//FILE
{
while(bMoreFiles)
{
wcout<<findData.cFileName;
bMoreFiles=FindNextFile(szDirectory,&findData);
}
}//if
else if(findData.dwFileAttributes ==FILE_ATTRIBUTE_DIRECTOR)Y //directory not file
ListFiles(findData.cFileName);//using recursion

else
return ;
}//ListFiles()


the second one is
let's say i want to show all images in directory
how can i know the type of the file (file extension)

thnx

S_M_A
May 17th, 2010, 03:42 PM
Have you read this http://www.codeguru.com/forum/showthread.php?t=312461

ALEXSNIPER
May 17th, 2010, 03:57 PM
thank you so much and i'm sorry to not to search in forums

but what about the second question it's important to me

S_M_A
May 17th, 2010, 04:10 PM
Well you can either set lpFileName in FindFirstFile to *.jpg or you can ignore all files but imagefiles after reviewing the result in lpFindFileData. Ignoring the wrong files is probably what you want since I guess you would like to find jpeg, bmp, tif and so on as well.

egawtry
May 19th, 2010, 10:13 AM
Get Rid of FILE_ATTRIBUTE_ARCHIVE and use FILE_ATTRIBUTE_NORMAL.

-Erik