Hello,
for getting file list name you could use:
Code:
TInt GetFilesFromFolderL(const TDesC& aFolder,
CDesCArray* aArray, TUint aEntrySortKey)
{
CDir* File_list = NULL;
while (iFilesArray->Count()> 0)
{
iFilesArray->Delete(0);
iFilesArray->Compress();
}
TInt err = 0;
err=iFs.GetDir(aFolder, KEntryAttNormal, ESortByName,
File_list);
if(err!=KErrNone)
{
if(File_list)
{
delete File_list;
File_list = NULL;
}
return err;
}
if (File_list)
{
File_list->Sort(aEntrySortKey);//ESortByName|EDescending
for (TInt i = File_list->Count() - 1; i >= 0; i = i - 1)
{
if (!File_list->Count() || (*File_list)[i].IsSystem()
|| (*File_list)[i].IsHidden() || (*File_list)[i].IsDir())
{
// ignore System & Hidden Files & folders
}
else
{
aArray->AppendL((*File_list)[i].iName);
}
}
}
delete File_list;
File_list = NULL;
return err;
}
calling:
Code:
GetFilesFromFolderL(KFolderName, iFilesArray, ESortByName);
While you have it you can check extensions of the files and remove thoes which are not images.
ps.
for selecting image from device you could use MGFetch:
Code:
CDesCArray * iArray;
iArray = new (ELeave) CDesCArrayFlat(1);
if (MGFetch::RunL(*iArray, EAnyMediaFile, EFalse))
{
TFileName fileName;
fileName.Copy((*iArray)[0]);
if(iArray)
{
delete iArray;
iArray=NULL;
}
good luck
Nuker85