这是更改字符串字符集的正确方法吗?

时间:2016-10-21 08:31:15

标签: java character-encoding

这是更改字符串字符集的正确方法吗?

String str = "helloworld你好世界"
String str2 = new String(str.getBytes("GBK"), "UTF-8");
System.out.println(str2);

2 个答案:

答案 0 :(得分:1)

您无法更改java.lang.String对象的“charset”。可以用作元素的“字符集”由Unicode定义。编码固定为UTF-16。

如果您想要表示java.lang.String的UTF-8编码的字节序列,请使用

H10 error

大多数情况下,根据系统的默认字符集,此转换将在I / O期间完成。

答案 1 :(得分:0)

Charset只是一种读取字符串的方法,它只是定义了在字符串和byte []之间进行转换的方式。

您的代码无法更改字符串的字符集。您的代码只是定义了一种读取字符串的错误方法。