javaweb页面出现问号乱码

对于tomcat9
首先要明白 UTF-8是不支持ISO-8829-1的.Tomcat8之后的默认字符集是UTF-8,所以如果使用
String newStr = new String(request.getParameter(“pageParamName”).getBytes(“ISO-8859-1”),“GBK”);
是没作用的,因为进行解码的对象根本就不是ISO-8859-1,所以会显示问号乱码,

第一种方法:只需要把JSP里面的字符集设置都改成UTF-8就行了,这样request.getParameter所获得的中文就不会乱码了。由于UTF-8主要是用于英文网站开发的,中文占了3个字节,相比之下GBK的中文才占2个字节,所以如果主要用于中文网站开发,使用GBK会比UTF-8节省很多空间。

第二种:修改在eclipse所创建的Servers/Tomcat v9.0 Server 下的server.xml,用UEdit打开,然后找到这一句:
javaweb页面出现问号乱码_第1张图片

在这后面面添加 URIEncoding=“GBK” 改后是:

这样Tomcat的默认字符集就修改成了GBK了,同理,直接request.getParameter所获得的中文不会乱码,不需要转码或者解码。

你可能感兴趣的:(java,乱码,jsp)