![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите плиз!!!
Part © (2003-01-20 13:39:00)Простите за назойливость и непонятливость :)
Хочу еще раз спросить, не могу прочитать файл не в текстовом режиме. Как не пробовал, а все время получаю текст. Что делать ?
Digitman (2003-01-20 14:46:00) [1]какие такие "стринги" ?
у тебя файл - не текстовый, так ?
вот ты его и читаешь блоками по SizeOf(buf) байт
затем каждый байт массива buf[] интерпретируешь просто как некое целое число и преобразуешь его в hex-представление
Part (2003-01-20 14:39:00) [2]Большое спасибо, Digitman, все работает. Но я все равно не понял почему inttohex , у меня вроде там стринги были ?
Digitman (2003-01-20 14:28:00) [3]точнее - так :
while not eof(FromF) do
begin
BlockRead(FromF, buf, SizeOf(buf), NumRead);
for i:= 0 to NumRead - 1 do
memo1.lines.add(IntToHex(buf[i], 2));
end;
end ;
Digitman (2003-01-20 14:27:00) [4]var
FromF, ToF: file;
NumRead, NumWritten: Integer;
Buf: array[1..2048] of Byte;
buf1 :string[2] ;
i : integer;
j:integer;
begin
if OpenDialog1.Execute then { Display Open dialog box }
begin
AssignFile(FromF, OpenDialog1.FileName);
Reset(FromF, 1); { Record size = 1 }
while not eof(FromF) do
begin
BlockRead(FromF, buf1, SizeOf(buf1), NumRead);
for i:= 0 to NumRead - 1 do
memo1.lines.add(IntToHex(buf1[i], 2));
end;
end ;
CloseFile(FromF);
end;
end;
Part (2003-01-20 14:22:00) [5]нигде не выскакивает, просто я получаю сиволы ,а их в hex формат не иогу перевести :( а файл вроде бы шестандцатиричный :(
Smithson (2003-01-20 14:18:00) [6]и чт не получается? Где ошибка выскакивает?
Part (2003-01-20 14:15:00) [7]var
FromF, ToF: file;
NumRead, NumWritten: Integer;
Buf: array[1..2048] of Char;
buf1 :string[2] ;
i : integer;
j:integer;
begin
if OpenDialog1.Execute then { Display Open dialog box }
begin
AssignFile(FromF, OpenDialog1.FileName);
Reset(FromF, 1); { Record size = 1 }
i :=2;
repeat
begin
BlockRead(FromF, buf1, i, NumRead);
memo1.lines.add(buf1);
//j:=strtoint("buf1");
end;
until (NumRead = 0) ;
CloseFile(FromF);
end;
end;
вот так не получается
Digitman (2003-01-20 14:06:00) [8]
> Как не пробовал, а все время получаю текст
А как, собственно, пробовал-то ? Где код ?