Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.16;
Скачать: CL | DM;

Вниз

Работа с файлами   Найти похожие ветки 

 
Zeus   (2004-12-27 11:27) [0]

Мастера, подскажите как определить размер файла в байтах, его полный путь известен. Делаю FileSize(), он неправильно выдает. А еще тогда как получить количество файлов в папке?


 
Fay ©   (2004-12-27 11:29) [1]

FindFirstFile/FindNextFile/Windows.FindClose


 
Bork   (2004-12-27 11:30) [2]

>как получить количество файлов в папке

Function GetFileCount(Dir:string):integer;
var fs:TSearchRec;
begin
 Result:=0;
 if FindFirst(Dir+"\*.*",faAnyFile-faDirectory-faVolumeID, fs)=0 then
   repeat
     inc(Result);
   until FindNext(fs)<>0;
 FindClose(fs);
end;


 
Алхимик ©   (2004-12-27 11:31) [3]


> Делаю FileSize(), он неправильно выдает.

Откуда такая уверенность?

> А еще тогда как получить количество файлов в папке?

FindFirst, FindNext


 
Fay ©   (2004-12-27 11:33) [4]

2 Bork   (27.12.04 11:30) [2]
>> ,faAnyFile-faDirectory-faVolumeID
Это зачем?


 
Bork   (2004-12-27 11:36) [5]

>подскажите как определить размер файла в байтах

function getfilesize(filename:string):int64;
var
ts:TSearchRec;
begin
if FindFirst(FileName, faAnyFile, ts)=0 then  begin
result:=ts.FindData.nFileSizeHigh*4294967296+ts.FindData.nFileSizeLow;
Findclose(ts);  
end;
end;


 
Bork   (2004-12-27 11:39) [6]

>faAnyFile-faDirectory-faVolumeID
>Это зачем?


можно просто faAnyFile


 
Poirot ©   (2004-12-27 11:40) [7]

[4]
Ну просто not faDirectory не катит:)))


 
sniknik ©   (2004-12-27 11:46) [8]

на самом деле FileSize правильно выдает, это вы не понимаете результат. ;о))

оно выдает не размер, а количетво записей... разница(!) и если размер записи неопределен, и файл нетипизирован, то по умолчанию ее размер 128байт.


 
Anatoly Podgoretsky ©   (2004-12-27 11:47) [9]

Fay ©   (27.12.04 11:33) [4]
Для того чтобы не считать за файлы папки по второму вопросу.


 
Fay ©   (2004-12-27 12:59) [10]

>> result:=ts.FindData.nFileSizeHigh*4294967296+ts.FindData.nFileSizeLow;

Жестоко 8)



Страницы: 1 вся ветка

Текущий архив: 2005.01.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.042 c
14-1104219690
syte_ser78
2004-12-28 10:41
2005.01.16
Занимательная математика :)


3-1102579466
denis24
2004-12-09 11:04
2005.01.16
создание adoconnection и adoquery в потоке


3-1102693499
Fedor
2004-12-10 18:44
2005.01.16
Вычисляемые поля


14-1104223880
Clickmaker
2004-12-28 11:51
2005.01.16
VB.NET &amp; MousePointer


1-1104153382
Jay1982
2004-12-27 16:16
2005.01.16
Вызов из DLL