页面压缩输出汉字乱码,不压缩是正常.

frice 2006-09-22 05:42:43
在学习servlet时,遇到一个汉字编码的问题,
设置了response.setContentType("text/html;charset=utf-8");
在不压缩页面时,输出汉字正常,浏览器解释后的字符编码为UTF-8;
压缩页面输出,汉字乱码,改浏览器的字符编码改为GB2312后,可以显示汉字.
...全文
374 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
cocoysy 2006-10-08
  • 打赏
  • 举报
回复
response.setContentType("text/html;charset=utf-8");
这个是对压缩该页面的代码进行UTF-8编码.
而你要压缩的那个页面没有对其编码进行表示.
添加<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
iwlk 2006-10-08
  • 打赏
  • 举报
回复
慢慢爬, 给分吧, 哈哈
iwlk 2006-10-08
  • 打赏
  • 举报
回复
压缩输入,这行代码就无意义了 response.setContentType("text/html;charset=utf-8");


在docType 字符串中加上 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 就可了.
ruanjiantaotao 2006-10-07
  • 打赏
  • 举报
回复
这是因为你的操作系统字符集是gb2312,utf的话不能显示中文~
学习Java中 2006-10-07
  • 打赏
  • 举报
回复
up
bnupan 2006-10-07
  • 打赏
  • 举报
回复
帮忙顶下了~~~
frice 2006-09-23
  • 打赏
  • 举报
回复
版主,怎么没有帮我啊?
frice 2006-09-22
  • 打赏
  • 举报
回复
最后一行 title = "Long Page GzipWriter"; 是多余的,
frice 2006-09-22
  • 打赏
  • 举报
回复
部分servlet代码如下:
PrintWriter out;
response.setContentType("text/html;charset=utf-8");
response.setHeader("Content-Encoding","gzip");
String docType =
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 " +
"Transitional//EN\">\n";
out.println(docType +
"<HTML>\n" +
"<HEAD><TITLE>" + title + "</TITLE></HEAD> \n" +
"<BODY>\n"+
"<h1 > "+ title + "</h1>\n" );
String line =
"可以可以不再看你 不能不能不再想你 <BR>"+
"曾经不停地问我自己 是否该忘了你 忘了你视线万变 梦里呼唤你 <BR>"+
"曾经不停地问过自己 是否该离开你 忘了你视线万变 梦里祝福你 <BR>";
for (int i = 0 ;i< 10 ; i++ )
{
out.println(i);
out.println("<BR>"+line+ "<BR>");
}
out.println("</body></html>");
out.close();title = "Long Page GzipWriter";

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧