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

Вниз

чтение файла   Найти похожие ветки 

 
Acul   (2006-01-04 11:52) [0]

Приветсвую вас мастера.
есть у меня файл, я хочу читать из него данные блоками по 1024 символа.
как мне это организовать? ибо строка вроде как не держит 1024 символа, а
for i:=1 to 1024
read(f, array[i])
выдает ошибку.


 
umbra ©   (2006-01-04 11:57) [1]

строка держит до 2 млрд. с лишним символов


 
tesseract ©   (2006-01-04 12:04) [2]

var myFile:File;
   buf:TByteArray;
   Size:dword;
   NumRead:dword;
begin
AssignFile(Filename);
Size:=1024; // размер!
Reset(myfile,size);
repeat
   BlockRead(MyFile, Buf,Size, NumRead);
 if numread<>Size then break; // обрыв файла
until EOF<>0
end;


 
begin...end ©   (2006-01-04 12:24) [3]

> tesseract ©   (04.01.06 12:04) [2]

> Size:=1024; // размер!
> Reset(myfile,size);
> ...
> BlockRead(MyFile, Buf,Size, NumRead)

Ну, и сколько же байт прочитается?

> AssignFile(Filename)
> EOF<>0

А можно хотя бы в справку заглядывать? Для начинающих же конференция, всё-таки.


 
tesseract ©   (2006-01-04 12:44) [4]


> Ну, и сколько же байт прочитается?

Дикое сорри. 1024*1024.

Из справки на глазок и тырил.


 
BlockRead   (2006-01-04 17:02) [5]


procedure TForm1.Button1Click(Sender: TObject);
const   Size=1024;
var myFile:File;
   Buf: array[1..Size] of Char;
   NumRead:dword;
   s:string;
   i:integer;
begin
 s:="";
 OpenDialog1.Execute;
 AssignFile(myFile,OpenDialog1.FileName);
 Reset(myfile,1);
   repeat
      BlockRead(MyFile, Buf,SizeOf(Buf), NumRead);
      if NumRead=Size then for i:=1 to size do s:=s+(buf[i]) else
      for i:=1 to Numread do s:=s+(buf[i]);
   until NumRead=0    ;
 CloseFile(myFile);
 Memo1.Text:=s;
end;


 
Кефир87 ©   (2006-01-04 17:15) [6]

Вот все замарочились 8)
BlockRead + F1 8)



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

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

Наверх




Память: 0.48 MB
Время: 0.025 c
14-1132836420
linox
2005-11-24 15:47
2006.01.22
Нужно сделать прогу для админа в инет-кафе (просьба)


1-1134418291
Jenya
2005-12-12 23:11
2006.01.22
Изменить цвет строки в компоненте TlistView???


2-1135805005
з. танька
2005-12-29 00:23
2006.01.22
выдрать строку адреса из окна IE


14-1135337499
Хинт
2005-12-23 14:31
2006.01.22
Стандартную иконка Delphi7


11-1117182830
dvk
2005-05-27 12:33
2006.01.22
Stretch в TKolGraphicEx