Konvertiere zwischen Hex-Strings und Byte-Arrays mit HexFormat.
Code-Vergleich
✕ Java 8
// Pad to 2 digits, uppercase
String hex = String.format(
"%02X", byteValue);
// Parse hex string
int val = Integer.parseInt(
"FF", 16);
✓ Java 17+
var hex = HexFormat.of()
.withUpperCase();
String s = hex.toHexDigits(
byteValue);
byte[] bytes =
hex.parseHex("48656C6C6F");
Problem mit diesem Code entdeckt? Sag uns Bescheid.
Warum der moderne Weg gewinnt
Bidirektional
Konvertiere Bytes→Hex und Hex→Bytes mit einer einzigen API.
Konfigurierbar
Trennzeichen, Präfix, Suffix, Groß-/Kleinschreibung.
Array-Unterstützung
Ganze Byte-Arrays auf einmal kodieren und dekodieren.
Alter Ansatz
Manuelle Hex-Konvertierung
Moderner Ansatz
HexFormat
Seit JDK
17
Schwierigkeitsgrad
Fortgeschritten
JDK-Unterstützung
HexFormat
Verfügbar
Weitgehend verfügbar seit JDK 17 LTS (September 2021)
Wie es funktioniert
HexFormat bietet bidirektionale Hex-Kodierung und -Dekodierung für Bytes, Integers und Arrays. Trennzeichen, Präfix, Suffix sowie Groß- und Kleinschreibung sind konfigurierbar. Manuelles Formatieren und Parsen entfällt.
Zugehörige Dokumentation