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

Вниз

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

 
Marat ©   (2007-03-06 14:17) [0]

Здравствуйте, мастера. Мне необходимо считать текстовый файл в шестнадцатиричном виде, т.е. должен получиться аналог нажатия в Norton Commander клавиш F3 и F4. Не подскажете, как это можно осуществить.


 
Джо ©   (2007-03-06 14:25) [1]

Читаем, как нравится, например при помощи TFileStream.
Перевод в текстовую шестнадцатиричную строку — BinToHex, например.


 
Ega23 ©   (2007-03-06 14:29) [2]

http://delphimaster.net/view/2-1173178891/


 
Marat ©   (2007-03-06 14:42) [3]

неправильно сформулировал. Сам файл при просмотре через блокнот выглядит так: " Ђ`80: i    2r7‚%яяяяя Ѓ ...". А если в NC, то 0000000 0B 07 80... вот мне и нужно считать этот файл в таком виде.


 
Ega23 ©   (2007-03-06 14:45) [4]

ну и?


 
Elen ©   (2007-03-06 14:47) [5]


> Marat ©   (06.03.07 14:42) [3]

Думаю тебе нужно читать каждый байт и преобразовывать его через IntToHex


 
Сергей М. ©   (2007-03-06 14:47) [6]


> вот мне и нужно считать этот файл в таком виде.
>


Ђ`80: i    2r7‚%яяяяя Ѓ

И это, по последнему постановлению правительства, называется "шестнадцатеричный вид" ?!

Поле чудес в стране дураков - иначе не назовешь)


 
Marat ©   (2007-03-06 14:51) [7]

что преобразовать можно я понял. я не знаю как начать


 
Ega23 ©   (2007-03-06 14:54) [8]


> что преобразовать можно я понял. я не знаю как начать


TFileStream + F1


 
Сергей М. ©   (2007-03-06 14:54) [9]


> Marat ©   (06.03.07 14:51) [7]


> не знаю как начать


Начать с изучения класса TFileStream


 
Elen ©   (2007-03-06 15:35) [10]


> Начать с изучения класса TFileStream

Или с изучения AssignFile...Reset...BlockRead...CloseFile :) (Старый добрый Паскаль!)


 
Джо ©   (2007-03-06 15:36) [11]

> [10] Elen ©   (06.03.07 15:35)
> Или с изучения AssignFile...Reset...BlockRead...CloseFile
> :) (Старый добрый Паскаль!)


И не советовать подобного:
>>[5] Elen ©   (06.03.07 14:47)
>> Думаю тебе нужно читать каждый байт и преобразовывать его через IntToHex

;>


 
Elen ©   (2007-03-06 15:40) [12]


> Джо ©   (06.03.07 15:36) [11]

Не ну читать конечно не каждый байт а сразу все, а преобразовыватьь в цикле побайтно :) (От буквоеды!)


 
Ega23 ©   (2007-03-06 15:42) [13]


> (От буквоеды!)


Архангельский вот тоже Synchronize(Work) в больших чувствах написал...


 
Игорь Шевченко ©   (2007-03-06 16:33) [14]

Elen ©   (06.03.07 15:40) [12]

Ты не хочешь отдохнуть от форума, знаний поднабраться ?


 
Elen ©   (2007-03-06 16:38) [15]


> Игорь Шевченко ©   (06.03.07 16:33) [14]

А я и так знаний набираюсь. По своему, своими методами. Жалко что тут вечно посылают без объяснений...


 
Игорь Шевченко ©   (2007-03-06 16:40) [16]

Elen ©   (06.03.07 16:38) [15]


> А я и так знаний набираюсь. По своему, своими методами


Замечательно. А давай ты недобранные знания не будешь в ответах приводить, людям вроде как помогать надо, а не засорять мозги


 
ASoft   (2007-03-07 04:30) [17]

перед 8 мартом мужики злые, обычно... :)


 
Anatoly Podgoretsky ©   (2007-03-07 20:24) [18]

> Elen  (06.03.2007 16:38:15)  [15]

> посылают без объяснений...

А оно тебе надо?


 
Германн ©   (2007-03-07 21:03) [19]


> Anatoly Podgoretsky ©   (07.03.07 20:24) [18]
>
> > Elen  (06.03.2007 16:38:15)  [15]
>
> > посылают без объяснений...
>
> А оно тебе надо?
>

Если начнут посылать "с объяснениями", то это будет уже схоже с форумами футбольных фанатов :)


 
Marat ©   (2007-03-11 07:50) [20]

Столько всего начитался про потоки, но все равно остановился.
procedure TConv_f.BitBtn1Click(Sender: TObject);
var Streaml, Stream2: TFileStream;
ByteBuf: array[0..2000] of byte;
sTemp: array[0..2000] of byte;
begin
if Not OpenDlg.Execute then Exit;
try
Streaml := TFileStream.Create(OpenDlg.FileName, fmOpenRead);
Streaml.ReadBuffer(ByteBuf, SizeOf(ByteBuf));
with Streaml do
 try
 Seek(0, 0);
 while Position < Size do
   begin
   Read(sTemp, 1);

   end;
 finally
 Free;
 end;
finally
Streaml.Free;
end;
end;
Как забрать информацию из ByteBuf в массив sTemp без всяких ошибок?


 
Loginov Dmitry ©   (2007-03-11 08:55) [21]

На вот, бедитор покури:
http://kladovka.net.ru/download.cgi?id=246


 
Marat ©   (2007-03-11 10:53) [22]

Спасибо большое! Классная вещь!



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

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

Наверх




Память: 0.51 MB
Время: 0.06 c
15-1173528716
Тим
2007-03-10 15:11
2007.04.01
Java для Opera 9.10


2-1173764018
ryslan56
2007-03-13 08:33
2007.04.01
Сворачивание формы


1-1170449595
Officeman
2007-02-02 23:53
2007.04.01
Аналог TListView с доп.функ


4-1163524472
Wadim
2006-11-14 20:14
2007.04.01
Как сделать обновление экрана как при нажатии кнопки Windows


15-1173018320
Капибара из дома
2007-03-04 17:25
2007.04.01
Загадги древнего Египта