Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.236.100.210] |
|
Сообщ.
#1
,
|
|
|
Для преобразования TMemoryStream в array of Byte можно использовать следующий код:
procedure TForm1.Button1Click(Sender: TObject); var M: TMemoryStream; Buff: array of Byte; begin M := TMemoryStream.Create; try M.LoadFromFile('c:\test.htm'); SetLength(Buff, M.Size); M.Position := 0; M.Read(Buff[0], M.Size); finally M.Free; end; end; Автор: Rouse_ |
Сообщ.
#2
,
|
|
|
Обратное преобразование осуществляется почти точно так же:
procedure TForm1.Button2Click(Sender: TObject); const Start = 49; AnEnd = 57; ArLen = AnEnd - Start + 1; var M: TMemoryStream; Buff: array of Byte; I: Integer; begin SetLength(Buff, ArLen); for I := 0 to ArLen - 1 do Buff[I] := Start + I; M := TMemoryStream.Create; try M.Write(Buff[0], ArLen); M.SaveToFile('c:\test.txt'); finally M.Free; end; end; В результате должен получится файл c:\test.txt такого содержания: 123456789 поскольку числа с 49 до 51 являются ASCII-кодами этих чисел, а соответственно и являются их символьным представлением. Автор: s-mike |