我给你别人的一段,自己将汉字转换过来:
这两天在win98下装apache1.3.9加jserv和gnujsp1.0,jdk1.2.2,jsdk2.0
发现中文无法正常显示。要么乱码,要么出错。
经网友提醒,总结了以下几条方法。
1:修改区域设置:在控制面版中选择区域设置,设为英语(美国)
然后重起。一切就都正常。
2:在jsp页中加入一条语句:
<%@ page contentType="text/html;charset=gb2312" %>
Jsp显示就正常了。
3:在编译servlet和jsp时加入代码选项。编译servlet使用
javac -encoding iso8859_1 myservlet.java
在jsp的zone配置文件中.修改编译参数为:
compiler=builtin-javac -encoding ISO8859_1
使用这种方法后,不需要作其他的改动就可以正常显示中文了。
只是看前面网友的文章在编译servlet时都用GBK码,我试了很多
次都不行。而且使用ISO8859_1在原理上难以理解。烦请那位网友给讲讲。
4:最土的办法,在servlet源程序中加入代码变换语句。如
try{
out.println(new ( (new String("我爱死你了")).getBytes("GBK"),"ISO8859_1"))
}
catch( UnsupportedEncodingException e)
{
.......
}
使用这种方法一定要注意捕获UnsupportedEncodingException这个异常。