入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

关于对String的编解码String(byte[] bytes, Charset charset)的理解

创建时间:2017-05-04 投稿人: 浏览次数:481

  今天在做毕设,遇见了一个问题,关于编解码的。因为第一次使用FCKEditor上传文件,不太了解FCK的机制。后来在上传文件的时候,出现了中文乱码,如下图:
出现乱码的情况下
 后来想了想,出现乱码肯定是编码的格式和解码的格式不相同。FCKEditor的默认编码格式在中国是”GBK”,而我的数据库和网页处理的编码格式都是”UTF-8”。在数次尝试修改FCKEditor的上传文件的编码的情况下,我只能选择在网页上将获取的数据进行解码,然后重新编码,以保证不出现乱码的问题。
 先来谈谈解码String.getBytes(Charset charset)。
 返回值:byte[]  返回的是一个 字节数组。
 方法的作用:将String以指定的编码格式(既参数charset)进行解码,然后以字节数组的形式存储这些解码后的字节。

 再来谈谈String(byte[] bytes,Charset charset)
 返回值:String  返回的是一串字符串。
 方法的作用:将字节数组bytes以charset的编码格式进行编码 。

原来的代码为:
pagelist2.get(1);//这是取到一个以"GBK"编码的String的字符串
然后我将代码改为:
//对其进行GBK解码,然后UTF-8重新编码。
new String(pagelist2.get(1).getBytes("GBK"),"UTF-8");

 修改后的网页获取到的数据如下:
重新编码后获取到的数据

声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
  • 上一篇:没有了
  • 下一篇:没有了
未上传头像