3 回答
TA贡献1936条经验 获得超6个赞
简短的例子
private static final Charset UTF_8 = Charset.forName("UTF-8");
String text = "Hello World!";
byte[] bytes = text.getBytes(UTF_8);
System.out.println("bytes= "+Arrays.toString(bytes));
System.out.println("text again= "+new String(bytes, UTF_8));
版画
bytes= [72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]
text again= Hello World!
TA贡献1804条经验 获得超8个赞
StringJava中的A 可以使用其getBytes(Charset)方法转换为“二进制” 。
byte[] encoded = "こんにちは、世界!".getBytes(StandardCharsets.UTF_8);
该方法的参数是“字符编码”;这是字符和字节序列之间的标准化映射。通常,每个字符都编码为一个字节,但是没有足够的唯一字节值来表示每种语言中的每个字符。其他编码使用多个字节,因此它们可以处理更大范围的字符。
通常,要使用的编码将由您正在实施的某些标准或协议指定。如果要创建自己的界面并可以自由选择,则“ UTF-8”是一种简单,安全且得到广泛支持的编码。
这很容易,因为您可以默认使用UTF-8,而不是使用某种方式来记录每条消息的编码。
这是安全的,因为UTF-8可以编码可在Java字符串中使用的任何字符。
它得到了广泛的支持,因为它是所有Java实现中一直需要的少量字符编码之一,一直到J2ME。大多数其他平台也支持它,并且在XML等标准中将其用作默认值。
添加回答
举报