在url地址栏使用中文传参数可能会是乱码了,下面我们来看看正确的jsp中页面间传中文参数转码的方法
转码: 代码如下: a.href="./showCont.jsp?tcontent="+encodeURI(encodeURI(tcontent)); 解码: 代码如下: java.net.URLDecoder.decode((String)request.getParameter("tcontent"), "UTF-8"); 例 a.jsp源代码 代码如下: <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>无标题文档</title> </head> <body> <% String str_test = "华工"; %> <form method=post action="b.jsp?test=<%=java.net.URLEncoder.encode(str_test) %>"> <input type="submit" value="Submit" name="提交"> </form> </body> </html> b.jsp源代码 代码如下: <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>无标题文档</title> </head> <body> <% String str = new String(request.getParameter("test").getBytes("ISO8859_1")); %> <BR> <%=str %> </body>