关于jsp页面中的pageEncoding和contentType以及html中的<meta标签中字符集的设置
的文章自己也看过但是就是解决不了问题?
<%@ page language="java" pageEncoding="utf-8" contentType="text/html;charset=utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<%@ include file="/header.html" %>
/*
在这儿,header.html的头部设置成
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
不掉还是乱码。
*/你好呀!<%@ include file="/footer.html" %>
</html>
结果:
     header.html和footer.html都显示乱码!
    只有中间显示:你好呀!没有乱码!

解决方案 »

  1.   

      为什么你不用gbk,gb2312或者是gb18030呢?它们是专门支持中文的!UTF-8是UTF-8编码是一种目前广泛应用于网页的编码,它其实是一种Unicode编码,即致力于把全球所有语言纳入一个统一的编码!不过不是很好控制!期待高手解决
      

  2.   

     你看能不能把include file="/footer.html"中  content="text/html; charset=UTF-8" 去掉
      因为include file表示加载文件footer.html 到你的主页面, 这个你的主页面已经有了编码格式。
      

  3.   

    先看下你的header.html和footer.html的是否有加入<%@ page language="java" pageEncoding="utf-8" contentType="text/html;charset=utf-8"%>.用UTF-8应该没有问题啊!你也可以换成GB2312试下.
      

  4.   

    根据你的问题,我刚写了一个例子,完全解决了乱码问题,你可以参考一下,代码如下:页面一:head.html<%@ page language="java"  pageEncoding="GBK"%>
    <html>
      <head>
      </head>
      <body>
      <h1>头测试页面</h1>
      </body>
    </html>
    页面二:footer.html<%@ page language="java"  pageEncoding="GBK"%>
    <html>
      <head>
      </head>
      <body>
     <h1>脚测试页面</h1>
      </body>
    </html>页面三:test.jsp(测试页面)
    <%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
    <html>
      <head>
      </head>
      <body>
         <%@ include file="header.html" %>
       <h1>中间测试页面</h1>
        <%@ include file="footer.html" %>     
      </body>
    </html>
    注:我已经测试过了,绝对不会出现乱码问题。
        楼主可以参考一下。
      

  5.   

    鼓励楼上的朋友啊!
    建议使用gbk或 gb2312编码方式
    因为utf-8处理中文数量是有限的
      

  6.   

    方法一: 去掉head.html和footer.html里面的body标签以外的所有东西包括body,毕竟head.html与footer.html是包含页面;方法二:在head和footer里面的所有charset设置值utf-8.