【救命】jsp 程序 tomcat 高版本下出现乱码 首先,请使用最新的稳定版本 tomcat-4.1.29,tomcat一直bug多多,不过改进挺快的;其次,你问的问题简直不着边际,有这么提问的吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 tomcat-4.1.29 也使用了啊!只要是高版本的 tomcat 都出乱码,但安装 tomcat 4.0.4 就没有中文乱码问题。太怪了,我现在编译的jsp 就不出乱码! 大概是因为你装的tomcat版本处理文字的那个jar文件没有,具体叫什么我也忘了.再装一个4.0.4的版本,比较一下看看少了什么文件. 我也遇到了高版本就乱码的问题我现在自己用个方法来解决给你这个方法看看吧package com.yangjun.struts.code;public class CharCode{ public static String UnicodeToChinese(String s) { try { if(s==null || s.equals("")) return ""; String newstring=null; newstring=new String(s.getBytes("ISO8859_1"),"gb2312"); return newstring; } catch(Exception e) { return s; } } public static String ChineseToUnicode(String s) { try { if(s==null || s.equals("")) return ""; String newstring=null; newstring=new String(s.getBytes("gb2312"),"ISO8859_1"); return newstring; } catch(Exception e) { return s; } } }在jsp中用useBean来实现.<jsp:useBean id="code" class="com.yangjun.struts.code.CharCode"/><%=code.UnicodeToChinese(***)%> 请不要胡乱的转码,正确的做法是不必在代码中做任何编码转换的。<%@ page language="java" contentType="text/html; charset=gb2312"%>有了contentType还会乱码么?什么操作系统?到目前为止,偶还没有碰到过3分钟之内搞不定的任何乱码问题! 严重同意goldenhua(深深地爱上了你) 的方法。别一遇到乱码问题 就胡乱找些网上的代码,进行转码。 谢谢各位的回答,我知道怎么处理乱码问题 可是 代码太多了!我挨个改可改不起。ratduck(小瑶) 说道好像很有道理! 大概是因为你装的tomcat版本处理文字的那个jar文件没有,具体叫什么我也忘了.再装一个4.0.4的版本,比较一下看看少了什么文件.我没看出丢了那个jar啊其实这套程序不再 tomcat 里使用是正常的 就是在 tomcat 高版本有问题 高版本的Tomcat确实和低版本的不同就算是4.1.29我也发现过以下问题:1.如果method为get,request.setCharaterEncoding(..)无效,用POST有效,但此句必须在最早一个出现的request.getParameter(...)之前.低版本测试无问题2.如果用的是<jsp:include page="xxx.jsp" />xxx.jsp中如果有<%@ page import="..." %>(注意,是import,不是contentType),则乱码产生,把<%@ page ....%>去掉,问题排除.4.0.4经测试无此问题.也不知你的情况属于哪种,顺手写了点,以后可能会对你有点帮助. 我用TOMCAT也遇到了这样的问题,所以我放弃了用TOMCAT,我现在用RESIN特好用,不信试试,不会错的! 关于使用java做一个模拟聊天程序qq的疑问? 0x08 8C 01 如何转成中文? 重写getTableCellEditorComponent后,输入的值无法保存进cell中? 寻求好的适合java程序员用的壁纸 哪位大侠给讲讲SE是干什么的. java无线开发求助 求助:文件夹中的文件如何删除? 请问哪里有scjp的模拟考试程序下载,我想熟悉一下考试环境,谢谢 工作快完了出现了问题,,关于数据库的知识.愿意献出200分 大家请帮我看看 菜鸟怎么练习编代码? 新手问题
再装一个4.0.4的版本,比较一下看看少了什么文件.
我现在自己用个方法来解决
给你这个方法看看吧
package com.yangjun.struts.code;public class CharCode
{
public static String UnicodeToChinese(String s)
{
try
{
if(s==null || s.equals(""))
return "";
String newstring=null;
newstring=new String(s.getBytes("ISO8859_1"),"gb2312");
return newstring;
}
catch(Exception e)
{
return s;
}
}
public static String ChineseToUnicode(String s)
{
try
{
if(s==null || s.equals(""))
return "";
String newstring=null;
newstring=new String(s.getBytes("gb2312"),"ISO8859_1");
return newstring;
}
catch(Exception e)
{
return s;
}
}
}
在jsp中用useBean来实现.
<jsp:useBean id="code" class="com.yangjun.struts.code.CharCode"/>
<%=code.UnicodeToChinese(***)%>
<%@ page language="java" contentType="text/html; charset=gb2312"%>有了contentType还会乱码么?什么操作系统?
到目前为止,偶还没有碰到过3分钟之内搞不定的任何乱码问题!
大概是因为你装的tomcat版本处理文字的那个jar文件没有,具体叫什么我也忘了.
再装一个4.0.4的版本,比较一下看看少了什么文件.我没看出丢了那个jar啊
其实这套程序不再 tomcat 里使用是正常的 就是在 tomcat 高版本有问题
就算是4.1.29我也发现过以下问题:
1.如果method为get,request.setCharaterEncoding(..)无效,用POST有效,但此句必须在最早一个出现的request.getParameter(...)之前.低版本测试无问题
2.如果用的是<jsp:include page="xxx.jsp" />
xxx.jsp中如果有<%@ page import="..." %>(注意,是import,不是contentType),则乱码产生,把<%@ page ....%>去掉,问题排除.4.0.4经测试无此问题.也不知你的情况属于哪种,顺手写了点,以后可能会对你有点帮助.