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

Вниз

Размер   Найти похожие ветки 

 
Ivolg   (2004-07-08 20:33) [0]

Здрасти. Скажите как узнать размер файла в байтах. Спасибо!!!


 
Palladin ©   (2004-07-08 20:34) [1]

GetFileSize, FileSizeByName, FileSize как ни странно...


 
Ivolg   (2004-07-08 20:46) [2]

А пример мона!!!!!!!! ПЛИЗЗЗ!!!!!!!!


 
Palladin ©   (2004-07-08 20:47) [3]

Удалено модератором: Отборнейший мат.


 
Fay ©   (2004-07-08 20:48) [4]

Size := GetFileSize(h, p);
8)


 
Ivolg   (2004-07-08 20:54) [5]

Fay

ИМХО. А что такое H и P?


 
Fay ©   (2004-07-08 21:03) [6]

дескриптор файла и указатель на DWORD, в котором срашшая часть размера файла. p может быть равен nil. Если работаешь с файлами > 4Gb юзай GetFileSizeEx.

Удачи.


 
Fay ©   (2004-07-08 21:05) [7]


> срашшая

!!! 8)


 
KilkennyCat ©   (2004-07-08 21:06) [8]


> Palladin ©   (08.07.04 20:47) [3]


Зачем же так... мона ведь и пример :)

var
 f : File of byte;
 b : byte;
 i : int64;
begin;
 assignfile(f, "imya_fayla");
 reset(f);
 i := 0;
 while not EOF(f) do begin
   read(f, b);
   inc(i);
 end;
 closefile(f);
 ShowMessage("Razmer = " + inttostr(i));
end;

можно оптимизировать...


 
Fay ©   (2004-07-08 21:19) [9]

2KilkennyCat ©   (08.07.04 21:06) [8]
Я видел подобные вещи в рабочих программах. 8) Не перевелись ещё маньяки...


 
KilkennyCat ©   (2004-07-08 22:05) [10]


> Fay ©   (08.07.04 21:19) [9]


черт, а я думал, я первый придумал... :) придется в своих программах не использовать, а то скажут, что плагиат :))


 
Palladin ©   (2004-07-08 22:11) [11]

Фигня все это...

Function DummyProger_GetFileSizeEx(филенаме:стринг):int64;
var
f:file of byte;
l:array of byte;
i:integer;
begin
l:=nil;
assignfile(f,филенаме); reset(f);
while not eof(f) do
 begin
  try
  except
   on EOutOfMemory do ShowMessage("Нехватает памяти для определения размера файла");
  end;
  setlength(l,length(l)+1);
  read(f,l[high(l)]);
 end;
closefile(f);
result:=0;
for i:=0 to high(l) do result:=result+1;
end;


 
Palladin ©   (2004-07-08 22:13) [12]

фу блин.. пиво расслабляетъ...
 try
  setlength(l,length(l)+1);
 except
  on EOutOfMemory do ShowMessage("Нехватает памяти для определения размера файла");
 end;


 
KilkennyCat ©   (2004-07-08 22:23) [13]


> Palladin ©   (08.07.04 22:13) [12]


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


 
Palladin ©   (2004-07-08 22:25) [14]

Я, кстати, хотел это сделать, пройтись обратно по массиву, опираясь на мысль, что слон от хвоста до хобота пять метров, а от хобота до хвоста три, но подумал что и так маразма через чур :))


 
Fay ©   (2004-07-08 22:48) [15]

2Ivolg   (08.07.04 20:54) [5]

> ИМХО. А что такое H и P?

Вы как-то не очень ясно выразили своё скромное мнение. Нельзя ли подробнее его изложить?


 
KilkennyCat ©   (2004-07-08 22:51) [16]


> Fay ©   (08.07.04 22:48) [15]


Это имелось в виду, что мнение о Р и Н уже есть, сложено и аксиомно... но можно послушать и чужое :)


 
Palladin ©   (2004-07-08 22:54) [17]

Может кислотно-щелочной баланс?


 
KilkennyCat ©   (2004-07-08 22:56) [18]


> Palladin ©   (08.07.04 22:54) [17]


вообще-то, тема кислотно-щелочного баланса у файлов - актуальна.
Знал бы, что потом за оффтоп не удалят - расписал бы :)



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

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

Наверх




Память: 0.5 MB
Время: 0.036 c
4-1086984795
alienserg
2004-06-12 00:13
2004.07.25
Synchronize внутри DLL. Пытаюсь рисовать из треда на форме.


14-1088668148
Красная Майка
2004-07-01 11:49
2004.07.25
Неофициальное MMP завтра для всех желающих!!!


1-1089491813
dido
2004-07-11 00:36
2004.07.25
Как занести данные из текстового файла в массив?


1-1089610748
Аноним
2004-07-12 09:39
2004.07.25
ListView


11-1077751353
nester
2004-02-26 02:22
2004.07.25
Как обрабатывать сообщения в КОЛ проге, если она без формы.