System.Classes.HexToBin
Delphi
function HexToBin(const Text: PChar; TextOffset: Integer;
var Buffer: TBytes; BufOffset: Integer; Count: Integer): Integer; overload;
function HexToBin(const Text: TBytes; TextOffset: Integer;
var Buffer: TBytes; BufOffset: Integer; Count: Integer): Integer;
function HexToBin(Text: PWideChar; Buffer: Pointer; BufSize: Integer): Integer;
function HexToBin(const Text: PWideChar; var Buffer; BufSize: Integer): Integer;
function HexToBin(Text: PAnsiChar; Buffer: PAnsiChar; BufSize: Integer): Integer;
function HexToBin(Text: PWideChar; Buffer: PAnsiChar; BufSize: Integer): Integer;
function HexToBin(Text: PAnsiChar; var Buffer; BufSize: Integer): Integer;
function HexToBin(const Text: PAnsiChar; Buffer: Pointer; BufSize: Integer): Integer;
C++
extern DELPHI_PACKAGE int __fastcall HexToBin(const System::WideChar * Text, int TextOffset, System::DynamicArray<System::Byte> &Buffer, int BufOffset, int Count)/* overload */;
Inhaltsverzeichnis
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
function | public | System.Classes.pas System.Classes.hpp |
System.Classes | System.Classes |
Beschreibung
Konvertiert einen String mit Hexadezimalzeichen in den entsprechenden Binärwert.
Mit HexToBin können Sie den hexadezimalen String Text
in den entsprechenden Binärwert, den der String darstellt, umwandeln.
Diese Funktion erhält die folgenden Parameter:
Parameter | Beschreibung |
---|---|
|
Zeiger auf eine String-Darstellung eines hexadezimalen Wertes. Zum Beispiel: "1decaf".
|
|
Anzahl der Zeichen, die am Anfang des Eingabe-Strings übersprungen werden sollen. Wenn |
|
Zeiger auf ein Byte-Array, das den Wert des hexadezimalen Eingabe-Strings erhält. Beispielsweise würde für den Eingabe-String "1decaf" der Ausgabebinärwert |
|
Anzahl der Bytes, die am Anfang des Ausgabe-Byte-Arrays übersprungen werden sollen. Wenn beispielsweise |
|
Anzahl der Bytes (Paare von hexadezimalen Zeichen), die in das Ausgabe-Byte-Array konvertiert werden sollen.
|
Sie können HexToBin mit oder ohne Angabe eines Offsets für den Eingabe-String (TextOffset
) oder den Ausgabepuffer (BufOffset
) aufrufen. Sie müssen jedoch entweder beide Offsets oder keinen angeben.
Wenn HexToBin ein nicht hexadezimales Zeichen findet, wird die Konvertierung abgebrochen und zurückgekehrt. Bei dem String "9abcdefg" konvertiert HexToBin nur "9abcde", weil das nächste Zeichenpaar ("fg") ein ungültiges Zeichen ("g") enthält.
Der Rückgabewert von HexToBin hängt davon ab, ob Sie in dem Aufruf von HexToBin Offsets angegeben haben:
- Wenn Sie Offsets angegeben haben, dann ist der Rückgabewert die Anzahl der Bytes, die aus dem Eingabe-String gelesen und binär in
Buffer
geschrieben wurde. Für den String "9abcdefg" wird beispielsweise 3 zurückgegeben, weil 3 Byte gelesen wurden ("9abcde", "fg" enthält ein ungültiges Zeichen). - Wenn Sie keine Offsets angegeben haben, dann ist der Rückgabewert die Anzahl der Bytes, die nicht aus dem Eingabe-String gelesen und binär in
Buffer
(BufSize
– inBuffer
geschriebene Bytes) geschrieben wurde. Für den String "9abcdefg" undBufSize
4 wird beispielsweise 1 zurückgegeben, weil 3 Byte von 4 erwarteten gelesen wurden ("9abcde", "fg" enthält ein ungültiges Zeichen).