Форум: "Начинающим";
Текущий архив: 2007.01.07;
Скачать: [xml.tar.bz2];
ВнизРезультаты работы функций (работа с файлами и каталогами) Найти похожие ветки
← →
kukuikar © (2006-12-14 15:31) [0]Данная функция возвращает в TStrings список файлов папки:
procedure TForm1.ListFilePath(Path: string; FileList: TStrings);
var
fs: TSearchRec;
begin
if FindFirst(Path + "*.*", faAnyFile, fs) = 0 then
begin
repeat
if (fs.Attr <> faDirectory) then
begin
FileList.Add(fs.Name);
end;
until FindNext(fs) <> 0;
FindClose(fs);
end;
end;
А эта функция возвращает количество файлов в папке:function GetFileCount(Path: string): integer;
var
fs: TSearchRec;
begin
Result := 0;
if FindFirst(Path + "*.*", faAnyFile, fs) = 0
then
repeat
inc(Result);
until FindNext(fs) <> 0;
FindClose(fs);
end;
Результат:
Количество строк из первой функции должно равнятся результату второй функции? Нет не равно.
Если выделить подопытную папку и посмотреть ее свойства, то количество файлов совпадает с результатом второй функции.
Вообщем я сломал мозг... Просвятите...
← →
clickmaker © (2006-12-14 15:33) [1]
> if (fs.Attr <> faDirectory)
← →
Плохиш © (2006-12-14 15:33) [2]Странно, в список папки не включаешь, а в другой функции считаешь и хочешь, чтобы всё совпало...
← →
Dmitrij_K (2006-12-14 15:42) [3]Проверка неправильная.
if (fs.Attr and faDirectory)<>0 then Директории
← →
allrussia (2006-12-15 01:28) [4]попробуй и там и там поставить
вместо ...Path + "*.*", faAnyFile...
...Path + "*.*", faAnyFile - faDirectory...
← →
kukuikar © (2006-12-15 11:12) [5]
> Dmitrij_K (14.12.06 15:42) [3]
> Проверка неправильная.
> if (fs.Attr and faDirectory)<>0 then Директории
Спасибо, это как раз то что надо было поправить...
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.01.07;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c