Maison  >  Article  >  Java  >  Comment conserver les zéros non significatifs lors de la conversion de tableaux d'octets en chaînes hexadécimales en Java ?

Comment conserver les zéros non significatifs lors de la conversion de tableaux d'octets en chaînes hexadécimales en Java ?

DDD
DDDoriginal
2024-11-21 16:34:12759parcourir

How to Preserve Leading Zeros When Converting Byte Arrays to Hex Strings in Java?

Préserver les zéros non significatifs lors de la conversion de tableaux d'octets en chaînes hexadécimales en Java

Pour convertir un tableau d'octets en chaîne de chiffres hexadécimaux tout en conservant les zéros non significatifs en Java, implémentez les approches suivantes :

Utilisation String.format

Formatez chaque octet sous la forme d'une chaîne hexadécimale de deux caractères à largeur fixe à l'aide de String.format. Les zéros non significatifs sont garantis :

byte[] bytes = ...;
String hexString = "";
for (byte b : bytes) {
    hexString += String.format("%02X", b);
}

Utilisation du codec Apache Commons

Profitez de la méthode Hex.encodeHexString du codec Apache Commons :

import org.apache.commons.codec.binary.Hex;

byte[] bytes = ...;
String hexString = Hex.encodeHexString(bytes);

Utiliser la goyave ByteString

Utilisez la classe ByteString de Guava pour convertir les octets en chaîne hexadécimale :

import com.google.common.hash.Hashing;

byte[] bytes = ...;
String hexString = Hashing.sha256().hashBytes(bytes).toString();

Chaque approche garantit que les zéros non significatifs sont préservés lors de la conversion de tableaux d'octets en chaînes hexadécimales.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn