关于jsp文件中字符编码的问题
jsp文件中有如下可以设置编码的方式:
1.<%@ page contentType="text/html; charset=gb2312" pageEncoding="gb2312"%>
2.<meta http-equiv="Content-Type" content="text/html; charset="gb2312">
3.response.setCharacterEncoding("utf-8");
4.response.setContentType("text/html;charset=gbk");
这几个句子分别都是在哪些位置起作用?这几个句子是否有作用相同的?
多谢!
sanchez
12 years, 2 months ago
Answers
1.
这句是告诉浏览器你的html的编码,浏览器就会使用这个编码对响应体进行解码。不过似乎有些浏览器并不理会这个标识,例如firefox是有自己的编码探测算法的。
2.
<%@ page contentType="text/html;charset=gb2312"pageEncoding="gb2312"%>
response.setContentType("text/html;charset=gbk");>
这两个是在做同一件事,我们知道web容器中的jsp引擎会把jsp编译成servlet类的,第一句最后会编程第二句执行,这两句都相当于设置响应头部的ContentType:xxx这个项
3.
这句是设置写入reponse中的outputStrem的内容使用utf-8编码格式。这个应该在还没往outputStream里面写东西的时候调用。
联合国女厕
answered 12 years, 2 months ago