首頁 >Java >java教程 >如何在 Java 中將字串轉換為位元組數組(以及轉換回來)?

如何在 Java 中將字串轉換為位元組數組(以及轉換回來)?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-27 18:41:10807瀏覽

How Do I Convert Strings to Byte Arrays (and Back) in Java?

在Java 中將字串轉換為位元組數組

在Java 中使用位元組數組時,通常需要將字串轉換為位元組數組。有幾種方法可以用來實現這種轉換。

最簡單的方法是 getBytes(),它使用平台的預設字元編碼將字串轉換為位元組數組。例如:

String str = "Hello World";
byte[] bytes = str.getBytes();

但是,請務必注意,預設字元編碼通常不適合您的應用程式。若要指定特定的字元編碼,請使用 getBytes(Charset) 方法。例如:

byte[] bytes = str.getBytes(StandardCharsets.UTF_8);

在某些情況下,您可能會遇到將位元組陣列顯示為字串的問題。這是因為位元組數組類別的toString()方法傳回類別名稱和記憶體位址。若要獲得可讀取的字串表示形式,請使用 Arrays.toString()。例如:

System.out.println(Arrays.toString(bytes));

要將位元組陣列轉換回字串,請使用 String(byte[]) 建構子。例如:

String str = new String(bytes);

必須確保用於將字串轉換為位元組數組的字元編碼與用於將位元組數組轉換回字串的字元編碼相同。否則,產生的字串可能會出現亂碼。

以上是如何在 Java 中將字串轉換為位元組數組(以及轉換回來)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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