我用java程序从数据库读出数据写成isbn.html文件.然后在title.jsp中用<jsp:include page="isbn.html" />显示.UTF-8的code不能正确显示.我觉得可能是java读的问题.有一个双引号""为utf-8code, 经如下java code 读出,"real"显示为
&acirc;€&#339;real&acirc;€&#157;. 用jsp:include放在title.jsp中不论怎样设置charset都不可正确显示了. outFileStream = new FileOutputStream(outFile);
 OutputStreamWriter writer = new OutputStreamWriter(outFileStream, "UTF-8");
 outStream  = new PrintWriter(writer);
 
 outStream.println(...); 是否可以用java读出utf-8字段,但不用utf-8编码?

解决方案 »

  1.   

    又附: "real" 是变成了http://www.dwheeler.com/essays/quotes-test-windows.html 中"Embedded UTF-8 Encoding" 的模样, 不是上面那个样子.一提交就又转码了. :(
      

  2.   

    首先包含和被包含的两个文件的编码要一致,其次,在两个文件中都要写上编码规则
    <%@page contentType="text/html; charset=UTF-8"%>
    还要保证这两个文件本身的编码确实是UTF-8(用记事本打开,另存为的时候,可以看到当前编码)。
      

  3.   

    包含和被包含文件的各种编码搭配方式都试过了。utf-8/utf8, utf-8/iso-9958-1.... 都不行。只要isbn.html中的“”被读出时变成http://www.dwheeler.com/essays/quotes-test-windows.html 中"Embedded UTF-8 Encoding 的模样,就不行了。 用记事本打开,另存为的时候看到是utf-8.你的email是什么,我把isbn.html给你发过去。
      

  4.   

    isbn.html 没有正确生成?还是正确生成后不能在浏览器端显示?
      

  5.   

    我的html页面是这样的: http://www.mcgraw-hill.com.sg/output/0071201734.html
      

  6.   

    rootcn: 源程序给你发过去了, 帮忙看看。 谢谢。有谁想试一试的, 请留下email.
      

  7.   

    没有见到文件啊,可能在发的时候过滤掉了.
    最好先压缩一下, .rar 之类应该是安全的.
      

  8.   

    又发了一遍, 试试。 已经zip过了。
      

  9.   

    [email protected]
    [email protected]
      

  10.   

    需要的可以自己去下载。 http://www.geocities.com/luoyan7/tmp/isbn.zip
      

  11.   

    很奇怪的现象。如果用editplus等文本编辑工具编辑html文件就一定会出现乱码,但是用eclipse将html文件中的中文再重新编辑一下就好了。
            我的环境:
            tomcat5.0.28
            eclipse 3.1.1 
            jdk  1.4.02
            OS : windows XP P1
    include传递的默认编码方式是utf-8的,你试试在tomcat中设置一下tomcat服务器的编码方式,具体怎么设置我想不起来了,你到网上查看一下。
      

  12.   

    设置tomcat也试过了。也不行。我觉得HTMLpage生成这样就不行了。可能不能用 OutputStreamWriter(outFileStream, "UTF-8"); 可又不知要用什么。
      

  13.   

    下不来,说是对方服务器忙。其实没你想的那么难,只要到处保持编码的一致性就ok了,全部采用utf-8。另外,我看了你的那个demo页面,你那个页面明显是按系统默认格式编码的嘛,不是utf-8的。
      

  14.   

    好像跟统一编码关系不大,我在实验他的程序的时候全部采用了utf-8的编码方式,不行。开始在editplus中编辑,给应用程序加过滤器等方法都试验过了,也没有,没想到在eclipse中重新编辑了一下就奇迹般的好了。