日期:2014-05-18  浏览次数:20662 次

jsp传值中文出现乱码??
JSP页面中传值时,数字和字母能正常传递,但是汉字就会出现乱码?
request.setCharacterEncoding( "gbk ");
request.setCharacterEncoding( "gb2312 ");
我都试过,从前一个页面传过来的汉字能获取,但本页面传递给本页面就会出现乱码?
郁闷呀,各位大虾帮帮小弟的忙!!先谢了!诚心请教!

------解决方案--------------------
你JSP页面编码是什么
------解决方案--------------------
String aaaa = request.getParameter( "aaaa ");
String bbbb= " ";
if( aaaa != null && ! " ".equalsIgnoreCase(aaaa.trim()) ){
byte temp[] = _aaaa.getBytes( "iso-8859-1 ");
bbbb= new String(temp);
}

其中bbbb就是你想得到的中文,aaaa是你最初取得的乱码
------解决方案--------------------
jsp页面设置: <%@ page language= "java " import= "java.util.* " pageEncoding= "GBK "%>
配置个过滤器 去google 有很多
如果是tomcat 在server.xml中 <Connector> 里面加上URIEncoding= "GBK "

中文参数的时候进行下编码 URLEncoder.encode(args, "GBK ")
读取的时候 URLDecoder.decode(args, "GBK ")
------解决方案--------------------
把jsp中的request.setCharacterEncoding( "gbk ");去掉,
在顶端加上 <%@page contentType= "text/html; charset=GBK "%>
试试.
------解决方案--------------------
看看blog.csdn.net/lijiuu
------解决方案--------------------
<form action= "/Media/admin/video/queryVideo.jsp " method= "get ">
把 method 改成 post
看看
------解决方案--------------------
class GB{
public static String toGb(s){
String str = null;
if (s == null) {
s = " ";
}
try {
str = new String(s.getBytes( "ISO8859_1 "), "GBK ");
return str;
} catch (Exception e) {
return null;
}
}
}
String key = GB.toGb( request.getParameter( "keyWord "));//这样应该就是中文了
//request参数也这样