最近看编码的问题看得头大了,网上的帖子一人一个说法,看java文档,我也没弄清
1.response.setCharacterEncoding(charset)是设置服务器发送响应数据的编码,还是设置浏览器接收服务器响应数据后解码用的那个码(这两个是不同的概念)?比如下面这位老哥说的(原贴链接:
http://www.cnblogs.com/xdouby/p/8308915.html),他前面说response.setCharacterEncoding()是设置服务器响应数据的编码,然后说response.setContentType(“text/html;charset=utf-8”); 设置浏览器对服务器响应数据的解码,但他之中调用了response.setCharacterEncoding(),(这是java文档中说的,在getWriter()之前调用就能起到这个效果)就不用写response.setCharacterEncoding了。这里问题就来了,他前面说response.setCharacterEncoding是设置服务器数据输出编码的,response.setContentType怎么设置浏览器解码的?有没有人说说到底是怎么回事,谁设置编码,谁设置解码?
2.request.setCharacterEncoding:是设置服务器对浏览器发送过来数据的解码格式对吧
3.response.setHeader("content-type", "text/html;charset=字符编码");等于response.setContentType(“text/html;charset=utf-8”); 吗? 一样在getWriter()之前执行的话就有response.setCharacterEncoding(“utf-8”); 的效果吗?
能说出几个问题答案就说几个,希望能够帮我解答疑惑