Arquivos no formato HEX

Delphi

18/01/2004

como faço p/ abrir qualquer tipo de arquivo e passa-lo p/ o formato HEX, de forma q eu possa acessar cada byte desse arquivo????


valew.....


::d::a::m::m::i::t::

::d::a::m::m::i::t::

Curtidas 0

Respostas

Beppe

Beppe

18/01/2004

Pra acessar cada byte do arquivo você não precisa tê-lo em hex, basta usar file of Byte, ou um TFileStream e ler byte a byte.

Pra transformar um byte em hex, usa IntToHex(Um_Byte, 2)


GOSTEI 0
::d::a::m::m::i::t::

::d::a::m::m::i::t::

18/01/2004

cara.... tem com tu coloca um exemplo????
dei um mexida aki mas naum consegui fazer funcionar.....

valew...


GOSTEI 0
Beppe

Beppe

18/01/2004

Exemplo de que? É que no título tu pede uma coisa, mas na explicação parece outra...


GOSTEI 0
::d::a::m::m::i::t::

::d::a::m::m::i::t::

18/01/2004

tipo...um exeplo de como acessar um byte de um TStreamFile.....


GOSTEI 0
Beppe

Beppe

18/01/2004

var
  Valor: Byte;
begin
  with TFileStream.Create(´dados.dat´, fmOpenReadWrite) do
  try
    Seek(10, soFromBeginning); // posiciona no 11o. byte
    ReadBuffer(Valor, SizeOf(Byte));
    Seek(-4, soFromCurrent); // volta 4 bytes(8o. byte)
    ReadBuffer(Valor, SizeOf(Byte));
    Seek(0, soFromEnd); // final do arquivo
    WriteBuffer(Valor, SizeOf(Byte));
  finally
    Free;
  end;
end;


Quando se lê ou escreve, o cursor avança pelo números de bytes acessados(lidos ou escritos com sucesso). A posição inicial é zero, e você pode mudá-lo com Seek. Quando você escreve, os dados são sobrescritos, exceto quando o cursor está no final, quando o arquivo é expandido. Espero ter ajudado.


GOSTEI 0
POSTAR