首頁  >  文章  >  Java  >  在 Java 中將位元組數組轉換為十六進位字串時如何保留前導零?

在 Java 中將位元組數組轉換為十六進位字串時如何保留前導零?

DDD
DDD原創
2024-11-21 16:34:12759瀏覽

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

在Java 中將位元組數組轉換為十六進位字串時保留前導零

將位元組數組轉換為十六進位數字字串同時保留前導零在Java中,實作以下方法:

使用String.format

使用String.format 將每個位元組格式化為固定寬度的兩個字元的十六進製字串。保證前導零:

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

使用 Apache Commons Codec

利用 Apache Commons Codec 的 Hex.encodeHexString 方法:

利用 Apache Commons Codec 的 Hex.encodeHexString 方法:
import org.apache.commons.codec.binary.Hex;

byte[] bytes = ...;
String hexString = Hex.encodeHexString(bytes);
利用 Apache Commons Codec 的 Hex.encodeHexString 方法:

使用番石榴的ByteString

使用Guava 的ByteString 類別將位元組轉換為十六進位字串:

import com.google.common.hash.Hashing;

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

每種方法都確保在將位元組數組轉換為十六進位字串時保留前導零。

以上是在 Java 中將位元組數組轉換為十六進位字串時如何保留前導零?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn