Zitat:
Delphi-Quellcode:
{$IFDEF MSWINDOWS}
for i:=1 to length(input) do
{$ELSE} //auf iOS und Android sind die Strings 0-basiert...
for i:=0 to length(input)-1 do
{$ENDIF}
if i mod 2 = 0 then
=0 ... je nach String-Typ ist der Vergleich auf den Systemen unterschiedlich.
Jeweils das erste Zeichen oder das zweite Zeichen.
Vorschlag:
Mit TEncoding.Default den String in ein TBytes (
ANSI) und das dann z.B. via BinToHex nach HEX.
Andersrum HexToBin und dann via TEncoding.Default von TBytes nach String.
Zitat:
Delphi-Quellcode:
if length(einhexbyte)=1 then
einhexbyte:='0'+einhexbyte;
Format kennt auch führende Nullen, siehe
OH.