Heim >Java >javaLernprogramm >Wie konvertiere ich einen String in Java in Hexadezimal und zurück?

Wie konvertiere ich einen String in Java in Hexadezimal und zurück?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-07 21:17:15248Durchsuche

How to Convert a String to Hexadecimal and Back in Java?

Konvertieren einer Zeichenfolge in eine Hexadezimaldarstellung in Java

Bei der Arbeit mit Binärdaten oder Kryptografie ist die Konvertierung einer Zeichenfolge in ihre hexadezimale Darstellung unerlässlich. In Java kann dieser Konvertierungsprozess mithilfe der String-Klasse und der BigInteger-Klasse durchgeführt werden.

Um eine Zeichenfolge in eine Hexadezimalzahl umzuwandeln, können Sie die folgenden Schritte ausführen:

  1. Konvertieren Sie die Zeichenfolge mit der Methode getBytes() in ein Byte-Array:

    byte[] bytes = myString.getBytes(/*YOUR_CHARSET?*/);
  2. Verwenden den BigInteger-Konstruktor, um ein neues BigInteger-Objekt aus dem Byte-Array zu erstellen:

    BigInteger bi = new BigInteger(1, bytes);
  3. Verwenden Sie die format()-Methode der String-Klasse, um das BigInteger-Objekt als hexadezimale Zeichenfolge zu formatieren:

    String hexString = String.format("%040x", bi);

Der resultierende HexString besteht aus 40 Zeichen Hexadezimale Darstellung der ursprünglichen Zeichenfolge.

Konvertieren einer hexadezimalen Zeichenfolge zurück in eine Zeichenfolge

Der Prozess der Konvertierung einer hexadezimalen Zeichenfolge zurück in eine Zeichenfolge ähnelt dem oben genannten Prozess , aber umgekehrt.

  1. Konvertieren Sie die hexadezimale Zeichenfolge in a BigInteger-Objekt mit dem BigInteger-Konstruktor:

    BigInteger bi = new BigInteger(hexString, 16);
  2. Verwenden Sie die getBytes()-Methode der BigInteger-Klasse, um das BigInteger-Objekt in ein Byte-Array zu konvertieren:

    byte[] bytes = bi.getBytes();
  3. Verwenden Sie den String-Konstruktor, um aus dem Byte ein neues String-Objekt zu erstellen array:

    String myString = new String(bytes);

Der resultierende myString ist der ursprüngliche String, der in Hexadezimal konvertiert wurde.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen String in Java in Hexadezimal und zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn