Conversion de chaînes en hexadécimal en Java
La conversion d'une chaîne en hexadécimal en Java est une tâche simple qui peut être accomplie à l'aide du String.format () méthode. Voici comment procéder :
public String toHex(String arg) { return String.format("%040x", new BigInteger(1, arg.getBytes(/*YOUR_CHARSET?*/))); }
Dans ce code, la ligne BigInteger(1, arg.getBytes()) convertit la chaîne en un objet BigInteger, qui représente un entier non négatif de précision arbitraire . L'argument 1 spécifie que l'entier est représenté dans l'ordre des octets petit-boutien.
La ligne String.format(" 0x") formate ensuite l'objet BigInteger sous forme de chaîne hexadécimale. Le spécificateur de format 0x spécifie que la chaîne doit être complétée par des zéros jusqu'à une largeur totale de 40 caractères.
Conversion des chaînes hexadécimales en chaînes
Conversion d'une chaîne hexadécimale le retour à une chaîne est similaire au processus de conversion décrit ci-dessus, mais en sens inverse. Voici comment procéder :
public String fromHex(String hex) { byte[] bytes = new BigInteger(hex, 16).toByteArray(); return new String(bytes, /*YOUR_CHARSET?*/); }
Dans ce code, la nouvelle ligne BigInteger(hex, 16) convertit la chaîne hexadécimale en un objet BigInteger. L'argument 16 précise que la chaîne est représentée au format hexadécimal.
La méthode toByteArray() convertit l'objet BigInteger en un tableau d'octets.
Enfin, la nouvelle ligne String(bytes) convertit le tableau d'octets en une chaîne en utilisant le jeu de caractères spécifié.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!