tomcat与显示中文的servlet的问题,尽情给分。。。。

lhykillers 天平汽车保险股份有限公司系统开发部 部门经理  2001-05-14 07:38:00
一个书上的小程序,其中里面有中文,可以编译通过,但在tomcat中用IE显示时
却报错,无论怎么样都不行,大家帮我。。。。。。

Location: /examples/servlet/HttpServletInternal Servlet Error:java.io.IOException: Not an ISO 8859_1 character:Error: 500
...全文
27 点赞 收藏 2
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wxyxl 2001-05-14
javax.servlet.http.HttpResponse类用于产生返回页面.
通过HttpResponse定义的方法getOutputStream()可以获
得ServletOutputStream的实例,这样用户就可以利用
ServletOutputStream.write方法向输出流中写入返回页
面的内容. 但是ServletOutputStream使用的是缺省的编
码方式,如果要使返回页面中的中文字 符能够正常显示,
最好显示地指定所用的字符编码方式. 通常需要构造一个
OutputStreamWriter , 例程如下:

public void doGet (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
res.setContentType("text/html");
ServletOutputStream out = res.getOutputStream();
OutputStreamWriter ow = new OutputStreamWriter(out,"GB2312");
ow.write("这是测试");
ow.flush();
ow.close();
回复
jsp的中文问题及其解决方法(windows+weblogic),希望能对你有帮助。
1、修改区域设置,设为英语,或者装英文操作系统。
2、在JSP页面中加入下面一条语句:<%@page contentType="text/html;charset=gb2312"%>
3、在编译servlet和JSP时加入代码选项。编译servlet使用javac -encoding iso8859-1 myservlet.java 在JSP的zone配置文件中。修改编译参数为:compiler=builtin-javac -encoding ISO8859-1
4、在classpath中加入il8n.jar的路径。
5、最土的办法,在源程序中假如代码变换函数,如
try{
out.println((new String("你好")).getBytes("GBK"),"ISO8859-1"));
}
catch(UnsupportedEncodingException e)
{
//......
}
不幸的是,不同的服务器,解决中文问题的方法不会完全相同。总之,一定要多试验!
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2001-05-14 07:38
社区公告
暂无公告