我想知道关于jsp页面编码的问题

pageEncoding的作用就是告诉JSP编译器在将JSP文件编译成Servlet时使用的编码。网上说对于jsp转化的.java在被编译器读入的时候默认采用的是操作系统... pageEncoding的作用就是告诉JSP编译器在将JSP文件编译成Servlet时使用的编码。
网上说对于jsp转化的.java在被编译器读入的时候默认采用的是操作系统所设定的locale所对应的编码,比如中国大陆就是GBK,而一般我们不管是在记事本还是在ue中写代码,如果没有经过特别转码的话,写出来的都是本地编码格式的内容。
但是jsp文件不是这样,它没有这个默认转码过程,但是指定了pageEncoding就可以实现正确转码了。

网上还说一般情况下,在jsp文件中的字符串出现了乱码时,基本上都是由于pageEncoding设置错了编码引起的,比如你的jsp文件是以gbk编码保存的,但是你的jsp页面的pageEncoding却是utf-8的,就会出现乱码。(这里所说的情况只是在一个jsp页面添加了一些静态文本内容,不涉及浏览器提交的表单数据等等)

对于上述内容我自己尝试了一下,如果用配置了tomcat6的eclipse3.7.2来部署一个web项目,用记事本建了一个后缀为.jsp的文件,然后在body里面写了一句中文,确实和上面说的类似,如果我把pageEncoding设置为utf-8,启动tomcat后,浏览器显示的中文是乱码,然后我查看该jsp页面对应的.java文件发现中文就已经是乱码了,但是我改为gbk编码jsp就正常转化了。
我想是不是因为我的jsp文件是用记事本写的,本来是以本地的GBK编码格式存储的,然而pageEncoding又指定该jsp文件以utf-8编码的格式存储,所以中文出现了乱码

但是在MyEclipse中不是新建一个jsp页面大家都一般把pageEncoding默认改为utf-8格式的编码吗,这样做是提高了网站的通用性,但是根据上面的情况来说在jsp转化为java文件的时候中文不是应该出现乱码吗,是不是myeclipse新建的jsp和自己用记事本来写的jsp处理的方式不一样,还是我对页面编码有误解···请大神指导下······‍
展开
 我来答
ccppv
2014-08-17 · TA获得超过2994个赞
知道大有可为答主
回答量:5074
采纳率:40%
帮助的人:2968万
展开全部
如果你用记事本新建一个文件的话,默认应该是ANSI编码,你需要另存一下,存 成UTF-8编码才行。

你说了一大堆,只需要把后面的说清楚就行了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式