这是更改字符串字符集的正确方法吗?
String str = "helloworld你好世界"
String str2 = new String(str.getBytes("GBK"), "UTF-8");
System.out.println(str2);
答案 0 :(得分:1)
您无法更改java.lang.String对象的“charset”。可以用作元素的“字符集”由Unicode定义。编码固定为UTF-16。
如果您想要表示java.lang.String的UTF-8编码的字节序列,请使用
H10 error
大多数情况下,根据系统的默认字符集,此转换将在I / O期间完成。
答案 1 :(得分:0)
Charset只是一种读取字符串的方法,它只是定义了在字符串和byte []之间进行转换的方式。
您的代码无法更改字符串的字符集。您的代码只是定义了一种读取字符串的错误方法。