今天无意间碰到个问题怎么都不会解决,请教高手 原来是tomcat和jsp中的编码不一致了 ,一个是utf-8一个是gbk, 如果在后台传值的话你jsp和tomcat中是utp-8那就直接用 《《 String dwmc = new String(URLDecoder.decode(request.getParameter("name"),"utf-8")); 》》即可,如果不一致的话 那需要转换通过自定义来转换编码格式 /**
* 修改字符编码,将iso转为utf-8
*
* @param str
* @return
* @throws UnsupportedEncodingException
*/
public static String changeEncoding(String str) throws UnsupportedEncodingException{
if(getEncoding(str).equals("ISO-8859-1")){// 判断编码
return new String(str.getBytes("ISO-8859-1"),"UTF-8");
}else if(getEncoding(str).equals("GB2312")){
return new String(str.getBytes("GB2312"),"UTF-8");
}else{
return str;
}
}
* 修改字符编码,将iso转为utf-8
*
* @param str
* @return
* @throws UnsupportedEncodingException
*/
public static String changeEncoding(String str) throws UnsupportedEncodingException{
if(getEncoding(str).equals("ISO-8859-1")){// 判断编码
return new String(str.getBytes("ISO-8859-1"),"UTF-8");
}else if(getEncoding(str).equals("GB2312")){
return new String(str.getBytes("GB2312"),"UTF-8");
}else{
return str;
}
}