Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как узнать размер текстового файла в Delphi [D6, WinME]


Dr. Genius ©   (2004-10-06 09:20:00) 

Функция SizeOf не применима к текстовым файлам (TextFile), но я уверен, что существует способ узнать размер текстового файла и вывести его (размер) в Delphi в строковом (String) виде.
Как узнать размер текстового файла?


TUser   (2004-10-07 10:21:00) [1]


> kukuikar ©   (06.10.04 10:59) [4]

Это отнюдь не универсальный вариатн. И довольно медленный, кстати.


П7   (2004-10-07 09:30:00) [2]


> Fay ©   (06.10.04 20:52) [7]

А затем, что так быстрее. К тому же, если ты вообще работаешь с файламиерез потоки, то так ещё и удобнее! (:


Dr. Genius   (2004-10-07 09:10:00) [3]

Спасибо всем за помощь!


Fay   (2004-10-06 20:52:00) [4]

2 AndersoNRules
Интересный вариант. А нафиг ?


AndersoNRules   (2004-10-06 20:37:00) [5]

Function GetFileSize(FName:String):Int64;
var FS:TFileStream;
begin
try
FS:=TFileStream.Create(FName,fmOpenRead);
Result:=FS.Size;
finally
FS.Free;
end;
end;


kukuikar   (2004-10-06 10:59:00) [6]

Универсальная функция для всех файлов.
Просто указываншь файл и полуяаешь его вес в байтах.

function GetFileSize(namefile: string): Integer;
var
 InfoFile: TSearchRec;
 AttrFile: Integer;
 ErrorReturn: Integer;
begin
 AttrFile := $0000003F; {Any file}
 ErrorReturn := FindFirst(namefile, AttrFile, InfoFile);
 if ErrorReturn <> 0 then
   Result := -1 {в случае, если файл не найден}
 else
   Result := InfoFile.Size; {Размер файла в байтах}
 FindClose(InfoFile);
end;


kukuikar   (2004-10-06 10:59:00) [7]

Удалено модератором


TUser   (2004-10-06 10:51:00) [8]

А для того, чтобы вывести в строковом виде, есть совсем не-интуитивная функция inttostr()


П7   (2004-10-06 09:25:00) [9]

И вот ещё прикол-то в чём. Этой мега-функцией можно узнать размер не только текстового, но и любого другого файла. Главное, чтобы параметром был указатель на открытый файл любого типа.
ВотЪ! (:


П7   (2004-10-06 09:22:00) [10]

Как не странно это выглядит, но FileSize( f : TextFile );
Хотя наверно в выборе имни для функции разработчики сильно ошиблись, ибо получилось ОЧЕНЬ НЕ интуитивно понятное название! (:


Наверх

Титульная страница Поиск, карта сайта Написать письмо