*.ftl文件中文乱码的问题
原文:http://lvxin3792002.blog.163.com/blog/static/128939280201081324839/
今天终于实现了利用ext提供的表单,函数,将数据库中的内容通过Json显示在页面中,然后将页面修改之后的内容利用FromPanel的submit函数更新至数据库中。可是成功之后,却发现一个很让人难受的问题:ftl文件的页面显示中文出现乱码。
Myeclipse使用的是默认的GBK编码:可以在这里查看:Window->Preferences->Workspace->Text file encoding
struts2的配置文件中是这么配置编码的:<constant name="struts.i18n.encoding" value="GBK" />
浏览器编码方式选择GBK,在主页面的显示中文是正确的,但是加载ftl页面的显示中文仍是乱码。这是因为在后台编辑中,ftl文件默认的编码格式是GBK的,但是它输出的编码格式就变成了utf-8的。这样子中文就会显示乱码。
我们可以选择一个ftl文件,右键->properties->Text file encoding->Other中选择UTF-8,这时会看到这个页面在MyEclipse中显示和网页中看到的一样的乱码。我们可以在改变ftl 文件的编码格式之前,将页面整个copy到txt文档中,然后改变编码格式之后,再将txt文件中的内容复制到原来的文件中。
浏览器里面刷新,中文就不会显示乱码了。