精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● Java>>JAVA编程>>中文问题>>Servlet的中文显示

主题:Servlet的中文显示
发信人: hht()
整理人: hht(1999-03-11 11:06:06), 站内信件
【 在 weffen (wef) 的大作中提到: 】
: 【 在 dzxdzx (lyq) 的大作中提到: 】
没有在你的环境下做,我用的是oracle8 for Solaris,servlet引擎装在我的win9
5(jdk1.2+jsdk2.0)下,用的是servletrunner.
试了一下,发现输出到浏览器一端的中文无法正常显示(全是"?"),而用System.ou
t.println输出到控制台的是正常的.可以断定浏览器的显示有问题,怀疑是浏览器
不能显示Unicode,把中文字符拆成两个字节,在转换成ISO8859_1字符串(西文字符
),就可以正常显示了.这只是在我的配置下的结果.可能不太一样,不过我想原因是
一样的,代码片断如下:
while(rs.next()){
String s=rs.getString(1);
byte[] b=s.getBytes();//把String转换成字节数组
System.out.println(s);//正常显示中文
out.println(s);//浏览器输出"?"
out.println(new String(b,"8859_1"));//把字节数组转成西文字符串后浏览器
正常显示中文
}

--
       _/  _/  _/  _/  _/_/_/ 
      _/_/_/  _/_/_/    _/   
     _/  _/  _/  _/    _/     ICQ:9321912   
    

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.97.228.241]

[关闭][返回]