2 shi 1985201164 SHI_1985201164 于 2016.09.19 20:53 提问

.getBytes("ISO8859_1"),"GBK");怎样解决中文乱码

String name=new String(request.getParameter("name").getBytes("ISO8859_1"),"GBK");

2个回答

w172087242
w172087242   Ds   Rxr 2016.09.19 21:14

在标准的http请求中,如果没有做字符设置,那么默认是以iso8859-1这样编码来传输报文的。
所以在java中先把字符以iso8859-1来进行解码,得到原始二进制,然后再用gbk编码,获取到正常的字符。

希望能够帮到你...

Mr_dsw
Mr_dsw   Ds   Rxr 2016.09.19 22:04

你这样得到的是gbk类型的byte,通过下面的方法试试:
String name=new String(request.getParameter("name").getBytes("ISO8859_1"),"UTF-8");

Csdn user default icon
上传中...
上传图片
插入图片