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

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

Как перевести данные TMemoryStream


ivankor ©   (2002-10-11 15:02:00) 

Как перевести данные TMemoryStream в строку шестнадцатеричных чисел?
Если можно то привидите пример
Зарание спасибо.


Metal Knight   (2002-10-11 19:28:00) [1]

var Buf:PChar;
BufSize:integer;
...
BufSize:=Length(MyHexString)+1 div 2;
GetMem(Buf, BufSize);
HexToBin(MyHexString, Buf, BufSize);
MyMS.Write(Buf, BufSize);
FreeMem(Buf);
...


ivankor   (2002-10-11 19:16:00) [2]

Извините за тупой вопрос :)
А как обратно преобразовать?
Если можно с примером
зарание спасибо


AlexT1000   (2002-10-11 15:45:00) [3]

MyHexString := MyHexString + IntToHex(MyByte,2);// побайтно сработает наверняка
так вернее


AlexT1000   (2002-10-11 15:10:00) [4]

MyByte :byte;
MyHexString :string
with MemStream do begin
Position := 0;
MyHexString := "";
for i:=0 to Size -1 do begin
Read(MyByte,1);
MyHexString := MyHexString + IntToHex(MyByte,1);// побайтно сработает наверняка
end;

end;


Pumpkin   (2002-10-11 15:08:00) [5]

Если грубо
MS.ReadBuffer( B, 1 );
S := S + IntToHex( B, 2 );


MBo   (2002-10-11 15:07:00) [6]

for i:=0 to MStream.Size-1 do
s:=s+"$"+IntToHex(pbytearray(MStream.Memory)[i],3);


Наверх

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