Einzelnen Beitrag anzeigen

Schokohase
(Gast)

n/a Beiträge
 
#14

AW: Daten-String in Array of Byte einlesen

  Alt 5. Aug 2019, 11:02
Also wenn du diesen String (mit Hex-Werten) in Bytes umwandeln möchtest, dann geht das so
Delphi-Quellcode:
function DecodeHexStringToBytes(const AHexString: string): TBytes;
var
  byteIdx: Integer;
  Len: Integer;
begin
  Len := AHexString.Length;
  if AHexString.Length mod 2 <> 0 then
    raise EArgumentException.Create('AHexString must contain even number of chars');

  SetLength(Result, AHexString.Length div 2);
  for byteIdx := 0 to AHexString.Length div 2 - 1 do
  begin
    Result[byteIdx] := Byte.Parse('$' + AHexString.Substring(byteIdx * 2, 2));
  end;
end;
Hier werden immer zwei Hexadezimal-Ziffern genommen und davon der Dezimal-Wert berechnet und dieser in dem Byte-Array gespeichert.

BTW Dein Beispiel-String aus dem ersten Post beinhaltet 74 Zeichen und das ergibt dann 37 Bytes.
  Mit Zitat antworten Zitat