代码,跟测试结果如下, 对比红色部份
import java.io.IOException;
public class EncodingTest {
public static void main(String[] args) throws IOException {
String str="“我爱你,我喜欢你”这几个字是常常能听见的,也是听得不想在听的了�";
System.out.println(str);
String rs=new String (str.getBytes("utf-8"));
System.out.println(rs);
String temp=new String (rs.getBytes("gbk"),"utf-8");
System.out.println(temp);
}
}
结果:
“我爱你,我喜欢你”这几个字是常常能听见的,也是听得不想在听的了?
鈥滄垜鐖变綘锛屾垜鍠滄浣犫?濊繖鍑犱釜瀛楁槸甯稿父鑳藉惉瑙佺殑锛屼篃鏄惉寰椾笉鎯冲湪鍚殑浜嗭拷
“我爱你,我喜欢你???这几个字是常常能听见的,也是听得不想在听的了?
迷糊啊
String str="“我爱你,我喜欢你”这几个字是常常能听见的,也是听得不想在听的了 ";
System.out.println(str);
这一步是用utf-8解码字符串,再转成gbk输出,就是这一步有些字符串GBK不支持
如
浣犫?濊繖
应该是
浣犫€濊繖
String rs=new String (str.getBytes("utf-8"));
System.out.println(rs);
这一步是用gbk解码字符串,再转成utf-8输出
String temp=new String (rs.getBytes("gbk"),"utf-8");
System.out.println(temp);
这问题要怎么解决呢