轉換為位元組

要將字串編碼為位元組陣列,只需使用 String#getBytes() 方法,並在任何 Java 執行時上使用其中一個標準字符集:

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

並解碼:

String testString = new String(bytes, StandardCharsets.UTF_8);

你可以使用靜態匯入進一步簡化呼叫:

import static java.nio.charset.StandardCharsets.UTF_8;
...
byte[] bytes = "test".getBytes(UTF_8);

對於不太常見的字符集,你可以使用字串指示字符集:

byte[] bytes = "test".getBytes("UTF-8");

反之亦然:

String testString = new String (bytes, "UTF-8");

但這意味著你必須處理已檢查的 UnsupportedCharsetException

以下呼叫將使用預設字符集。預設字符集是特定於平臺的,通常在 Windows,Mac 和 Linux 平臺之間有所不同。

byte[] bytes = "test".getBytes();

反之亦然:

String testString = new String(bytes);

請注意,這些方法可能會替換或跳過無效字元和位元組。為了更好地控制 - 例如驗證輸入 - 你被鼓勵使用 CharsetEncoderCharsetDecoder 類。