我的开发环境是英文版的Windows2000 Pro,Tomcat版本5.5,JDK1.4,浏览器是IE6,系统中文支持已经安装。第一次做中文项目,发现我的Web Application运行起来之后所有的jsp页面都缺省用西文显示,中文的文字都是乱码,非要在IE里面将Encoding改成“Chinese Simplified(GB2312)”,页面才能正确显示中文字符。点击页面上的连接或者按钮跳转到别的页面之后,IE又自动切换回西文——又乱码了。为了解决这个问题,我已经做了如下尝试:1.所有的jsp页面都使用明确指定编码
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>2.Tomcat的conf目录下的server.xml里修改Connector信息如下:(就是加入了disableUploadTimeout="true" URIEncoding="GBK")    <Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"/>3.使用Filter 
将tomcat自带的那个SetCharacterEncodingFilter.class拷贝到自己的classes里面,在自己的web.xml中指定使用该filter  <filter>
    <filter-name>Set Character Encoding</filter-name>
    <filter-class>filters.SetCharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>GBK</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>Set Character Encoding</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>可是页面打开以后依然缺省是西文,绝望。哪位前辈遇到过这样的问题吗?难道是英文操作系统的问题?

解决方案 »

  1.   

    你在文件开始放上这一句试试<%@ page contentType="text/html;charset=gb2312%>
    我的可以显示中文,就是比你多这一句了
      

  2.   

    谢谢!加了这句之后,果然IE的encoding是简体中文了。除此之外,还需要做一次 native2ascii -encoding gb2312 a.properties b.properties 将资源文件encoding成gb2312,然后就能正常显示了。谢谢!散分~