可参考《Struts开发实例》中的“Struts完全中文显示解决方案”
*********************************************************
ftp://218.28.64.19:22
下载帐号:javadown
下载密码:javadown
**************************************************
FTP:61.138.209.228
USER:public_download
PWD:!@#$%^&
**************************************************

解决方案 »

  1.   

    TO:kui(kui)看了你写的文章,但我有一个疑问我在ActionServlet中设置字符集编码为什么不行啊(你处理方法是写在tomcat的过滤器中)代码如下(可能拼写有误):
    request.setCharacterEncoding("GBK");
    super.process(request,response);
      

  2.   

    还想请教一个问题从web 客户端收集数据到写入数据再到显示数据这一过程的字符编码是什么样子的,我大概分了以下几个过程,不知道详细不,请大家指明各阶段的字符编码1 web 客户端
    2 收集web 客户端数据到web服务器
    3 写入数据到database服务器
    4 从database服务器中取数据
    5 从database服务器发给取出的数据到web服务器
    6 最后发给web 客户端之所以问这个问题,是因为我写的一个struts程序,写到数据库(mysql)的数据通过phpMyAdmin查看是正常的,不是乱码,但是用jsp程序查看时就是乱码了.可能是在中间的转换过程发生了字符编码的转换,我对这一过程还不是很了解,希望指点!
      

  3.   

    Java 语言内部是用 Unicode 表示字符的,遵守 Unicode V2.0。Java 程序无论是从/往文件系统以字符流读/写文件,还是往 URL 连接写 HTML 信息,或从 URL 连接读取参数值,都会有字符编码的转换。这样做虽然增加了编程的复杂度,容易引起混淆,但却是符合国际化的思想的。
      

  4.   

    TO:kui(kui)>>Java 语言内部是用 Unicode 表示字符的我想知道的是Unicode 可以可以表示汉字,如果要可以表示汉字那么在ActionFormBean中输出(用system.out.println)为什么都是"?"像你说的那样如下面的
    title = rs.getString("title"); //数据取于数据库,rs为记录集对象用system.out.println(title) 为什么是"?"而不是正常的汉字
      

  5.   

    你可以这样啊:
    String strtitle=new String(title.getBytes("iso8859-1"),"gb2312");
      

  6.   

    TO: gogollili(gogolili) 你说的我当然知道,表面的处理java中文问题我都会我现在就想完全知道java是如何处理中文的,从头到尾的