GARANTIR DESCONTO

Fórum Transformar String ou Int em Hex? #170818

22/07/2003

0

Transformar String ou Int em Hex?


Host

Host

Responder

Posts

22/07/2003

Cebikyn

Use a função IntToHex:

  String := IntToHex( Integer , X);


Onde X é o número de dígitos desejados no resultado.


Responder

Gostei + 0

23/07/2003

Host

Tem alguma forma de converter um string para hex?


Responder

Gostei + 0

23/07/2003

Cebikyn

String ( contendo um decimal ) para Hex:
  String := IntToHex( StrToInt( SuaString ) , X);


Aqui está uma função que converte Hex em Integer (caso precise):
function HexToInt(HexStr : string) : Int64;
var
  RetVar : Int64;
  i : byte;
begin
  HexStr := UpperCase(HexStr);
  if HexStr[length(HexStr)] = ´H´ then
     Delete(HexStr,length(HexStr),1);
  RetVar := 0;  
  for i := 1 to length(HexStr) do begin
      RetVar := RetVar shl 4;
      if HexStr[i] in [´0´..´9´] then
         RetVar := RetVar + (byte(HexStr[i]) - 48)
      else
         if HexStr[i] in [´A´..´F´] then
            RetVar := RetVar + (byte(HexStr[i]) - 55)
         else begin
            Retvar := 0;
            break;
         end;  
  end;
  Result := RetVar;
end;


Ao passar o parâmetro [b:42045d4fe9]HexStr[/b:42045d4fe9], o último caracter [i:42045d4fe9]pode[/i:42045d4fe9] ser um [b:42045d4fe9]H[/b:42045d4fe9] ou [b:42045d4fe9]h[/b:42045d4fe9], que normalmente é usado para indicar que o número é hexadecimal. Ex: 00123h


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar