带有中文值的参数,在传递过程中会被转为乱码。
例如:
A.jsp中有如下代码
【
……
"/>连接
……
】
要将A.jsp页面中的name的中文值传到B.jsp页面,则在B.jsp页面应作如下处理:
B.jsp页面的接受代码
【
……
<%
String name=(String)request.getParameter("name");
name=new String(name.getBytes("ISO-8859-1"));
out.println(name+"
");
%>
……
】
页面的输出结果为:
春秋古铜色Vsk
总结:
在A页面中需要用URLEncoder.encode()方法将要传递的中文转换后传递给B页面,在B页面中,接收到中文值之后,需要将默认的ISO-8859-1编码格式转换为页面编码格式,即
name=new String(name.getBytes("ISO-8859-1"));
URLEncoder类在java.net包下,是编码类;URLDecoder类是解码类。
阅读(807) | 评论(0) | 转发(0) |