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

windows下开发运行正常,Unix+tomcat5.0运行出现乱码,怎么办?
我的JSP中需要从文本文件读取中文信息,读取的中文信息在windows下显示正常,但在Unix+tomcat5.0运行却出现乱码,其中页面已包含语句:
<%@   page   contentType= "text/html;   charset=GBK "   language= "java "   buffer= "32kb "%>
<META   http-equiv=Content-Type   content= "text/html;   charset=GBK ">

在Unix+tomcat5.0下用如下转换:
new   String(((String)map.get( "title ")).getBytes( "ISO-8859-1 "), "GBK ")
出现乱码全为“?”;
用如下转换:
new   String(((String)map.get( "title ")).getBytes( "UTF-8 "), "GBK ")
出现乱码类似于“锟斤拷锟斤拷祝锟斤拷锟揭癸拷司锟斤拷站全锟斤拷陌锟斤拷锟斤拷”
Unix+tomcat5.0为租用服务器,所以应该不能在其上设置配置文件,请问高手该怎么办?

------解决方案--------------------
我的异常网推荐解决方案:java环境变量设置,http://www.aiyiweb.com/java-other/172921.html
------解决方案--------------------
用的什么数据库,oracle吗?
要是oracle查一下oracle乱码的解决方法
------解决方案--------------------
4.3. linux默认编码

这里所说的linux默认编码,是指运行时的环境变量。两个重要的环境变量是LC_ALL和LANG,默认编码会影响到java URLEncode的行为,下面有描述。

建议都设置为 "zh_CN.UTF-8 "。

4.4. 其它

为了支持中文文件名,linux在加载磁盘时应该指定字符集,例如:mount /dev/hda5 /mnt/hda5/ -t ntfs -o iocharset=gb2312。