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

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

чтение файла [D7, XP]


frezz ©   (2006-01-06 21:59:00) 

Приветствую всех.
как мне производить чтение из файла строками по 2048 символов?
или массивом байтов.


Германн   (2006-01-07 01:45:00) [1]


> Однако если открываю не текстовый файл то вместо того что
> хотелось бы увидеть (ожидаю увидеть тоже самое что было
> бы в блокноте при открытии допустим ЕХЕ файла)

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


ferr   (2006-01-06 22:51:00) [2]

string на него не реагирует.

а у мемо в Text PChar, этот тип читает до тех пор пока не встретит 0.

мне не понятна ваша затея, т.к. текстовые файлы это подкласс бинарных, -> просмотрщик текста не должен открывать бинарные файлы.


ferr   (2006-01-06 22:48:00) [3]

там 0 - символ


Frezz   (2006-01-06 22:40:00) [4]

вот смотрите
нашел тут код

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;



Однако если открываю не текстовый файл то вместо того что хотелось бы увидеть (ожидаю увидеть тоже самое что было бы в блокноте при открытии допустим ЕХЕ файла) а всего лишь несколько символов и все


ferr   (2006-01-06 22:20:00) [5]

TMemoryStream может поможет


Johnmen   (2006-01-06 22:14:00) [6]

BlockRead+F1


Наверх

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