本文java web编程中国乱码解决,可以参照其他案件,相同的原理。
1.中国无法显示
一些Jsp在,中国根本无法显示。文字符集。
一定要保证文件头上写明:
<%@ page language = "java" contentType = "text/html; charset = gb2312" %> 或者 <%@ page language = "java" pageEncoding = "gb2312" %>
2.提交过程中的显示乱码
原理:中文參数提交时。server将其认成 ISO-8859-1 编码,而网页上显示的是GB2312 编码,两者不能兼容。有三种方法解决问题:
方法一:将其转成GB2312 格式,方法例如以下:
... <% String name = request.getParameter("stuname"); name = new String(name.getBytes("ISO-8859-1"),"GB2312"); ... %> ...缺点:此种方法必须对每个字符串进行转码,非常麻烦
方法二:直接改动 request 的编码
能够将 request 的编码改动为支持中文的编码,这样,整个页面中的请求,都能够自己主动转为中文。方法例如以下:
... <% request.setCharacterEncoding("gb2312"); String name = request.getParameter("stuname"); ... %> ...
注意的是,该方法要在取出值之前就设置 request 的编码,而且表单的提交方式是 post。可是。该方法必须对每个页面中进行 request 的设置,比較麻烦
方法三:利用过滤器
利用过滤器,能够对整个Web应用进行统一的编码过滤,比較方便。对于较大的项眼,这是一个好办法,在此只是为了引进更多...
版权声明:本文博客原创文章。博客,未经同意,不得转载。