转换为字节

要将字符串编码为字节数组,只需使用 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 类。