JSP实现动态页面无疑是通过参数的传递以及和数据库的数据交换,那么,作为我们最常用的中文,在 JSP 中却是屡屡出现乱码的情况,虽然很多情况下可以使用英文代替掉中文,从而进行参数的传递,但是如果可以解决中文乱码,那岂不是更好!
这时候我们要借助于JAVA中的这两个类了: URLEncoder 和 URLDecoder
类 URLEncoder
方法:
encode(String s, String enc) 使用指定的编码机制将字符串转换为 application/x-www-form-urlencoded 格式。 |
摆个代码的例子:
String message = "异常原因,订单失败!"; message = URLEncoder.encode(message,"UTF-8");//先使用方法改变编码转化格式 response.sendRedirect("message.jsp?message="+message);//再进行跳转
注意,在跳转之后不要直接输出和调用,而是要使用另一个方法进行转换!
类 URLDecoder
decode(String s, String enc) 使用指定的编码机制对 application/x-www-form-urlencoded 字符串解码。 |
同样摆个代码的例子:
String message = request.getParameter("message"); message = URLDecoder.decode(message, "UTF-8");//先解码,再输出 <%=message %>
通过运用这两个类的方法,就可以完成特殊符号以及中文在页面中间的参数传递了!