首頁 >Java >java教程 >如何在 Java 中將字串與十六進位相互轉換?

如何在 Java 中將字串與十六進位相互轉換?

DDD
DDD原創
2024-12-16 15:50:11148瀏覽

How Can I Convert Strings to and from Hexadecimal in Java?

在Java 中將字串轉換為十六進位

在處理低階程式設計操作時經常會遇到使用十六進制值。這包括建立校驗和、操作二進位資料以及與硬體設備連接等場景。 Java 提供了一種將字串轉換為十六進位表示形式的簡單方法。

要將「testing123」這樣的字串轉換為十六進位,您可以利用 Java 的 BigInteger 類別。以下程式碼片段說明如何實現這一點:

public String toHex(String arg) {
    return String.format("%040x", new BigInteger(1, arg.getBytes(/*YOUR_CHARSET?*/)));
}

toHex 方法採用字串作為參數並傳回其十六進位表示形式。 String.format 方法用於確保產生的十六進位字串具有 40 個字元的固定長度(在本例中)。

關於將十六進位值轉換回字串,過程類似,但相反。您可以使用 BigInteger 類別的 toString 方法將十六進位表示形式轉換回字串。

public String fromHex(String arg) {
    return new String(new BigInteger(arg, 16).toByteArray());
}

fromHex 方法假定輸入字串表示有效的十六進位值。它使用 toByteArray 方法將十六進位字串轉換回位元組數組,然後從這些位元組建構一個字串。

這提供了一種在 Java 中處理十六進位值的便捷方法,確保順利處理其資料原始形式。

以上是如何在 Java 中將字串與十六進位相互轉換?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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