Buscar

Gerando arq em hexa e de hexa para arquivo

Código

{Gerando um arquivo em Hexa}
function ReadHexFromFile(sFileName:String):String;
         Var ArqFile  : File;
             Buffer   : Array[1..2048] of Byte;
             ByteRead : LongInt;
             strHex   : String;
             i        : Integer;
         begin
              AssignFile(ArqFile,sFileName);
              FileMode := 0;
              Reset(ArqFile,1);
              repeat
                   BlockRead(ArqFile,Buffer,SizeOf(Buffer),ByteRead);
                   if ByteRead <> 0 then begin
                      for i := 1 to ByteRead do begin
                          strHex := strHex + IntToHex(Buffer[i],2);
                      end;
                   end;
              until (ByteRead = 0);
                   CloseFile(ArqFile);
              Result := strHex;
         end;
{Convertendo o Hexa para um arquivo}
function WriteHexToFile(sPathFileName:String;sFileHex:String):Boolean;
         Var FileXML  : File;
             Buffer   : Array of Char;
             ByteRead : LongInt;
             iByte    : LongInt;
         begin
              AssignFile(FileXML,sPathFileName);
              ReWrite(FileXML,1);
              SetLength(Buffer,(Length(sFileHex) div 2));
              HexToBin(PChar(sFileHex),PChar(Buffer),(Length(sFileHex) div 2));
              for iByte := 0 to ((Length(sFileHex) div 2) - 1) do begin
                  BlockWrite(FileXML,Buffer[iByte],1,ByteRead);
              end;
              CloseFile(FileXML);
              WriteHexToFile := FileExists(sPathFileName);
         end;

 

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Arquivos
Adicionada dia: 22/02/07
Por: Rubens Damasceno
Visualizada: 3707 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009