====== Работа с файловой системой ====== ===== Перечисление содержимого каталога ===== TSearchRec SR; int SRI; SRI= FindFirst(FTPServFunc::TransLatePath(APath, ASender->HomeDir)+ "*.*", faAnyFile, SR); while(SRI== 0) { TIdFTPListItem *LFTPItem= ADirectoryListing->Add(); LFTPItem->FileName= SR.Name; LFTPItem->Size= SR.Size; LFTPItem->ModifiedDate= FileDateToDateTime(SR.Time); if(SR.Attr== faDirectory) LFTPItem->ItemType= ditDirectory; else LFTPItem->ItemType= ditFile; SRI= FindNext(SR); } FindClose(SR); ==== Например удалить старые файлы ==== TSearchRec SR; int SRI; SRI= FindFirst(vTargetFolder+"*.*", faAnyFile, SR); while(SRI== 0) { if((SR.Name!= "..") && (SR.Name!= ".")) { TDate vCreate= SR.TimeStamp.DateString(); if((SR.Attr != faDirectory) && (vCreate != Now().CurrentDate())) DeleteFile(vFolderFTP+ SR.Name); } SRI= FindNext(SR); } FindClose(SR); ===== Информация о файле ===== struct stat vFileInfo; stat(vPathToFile, &vFileInfo); /*struct _stat { dev_t st_dev; ino_t st_ino; mode_t st_mode; nlink_t st_nlink; uid_t st_uid; gid_t st_gid; dev_t st_rdev; off_t st_size; _TIME_T st_atime; _TIME_T st_mtime; _TIME_T st_ctime; };*/