Freemarker模板上写死的中文生成HTML后出现乱码,在线等!

页面的编码我已经都试过gb2312,utf-8,gbk,没用的我系统采用的是UTF-8来做的我从数据库中读出数据让Freemarker生成HTML时,这些数据是不会乱码的... 页面的编码我已经都试过gb2312,utf-8,gbk,没用的
我系统采用的是UTF-8来做的
我从数据库中读出数据让Freemarker生成HTML时,这些数据是不会乱码的,但在模板里原先写着的中文在生成HTML之后就成了乱码
刚刚网上看到一位大侠说是编写ftl文件时的编码格式(myeclipse里右键ftl文件内容,选最后一项属性(preferenced))不对,但我安装Freemarker的插件之后,这个已经修改为UTF-8了,但还是乱码
展开
 我来答
tancaigxz
推荐于2017-05-21 · 贡献了超过152个回答
知道答主
回答量:152
采纳率:0%
帮助的人:27.2万
展开全部
Template 实体有个setEncoding()方法,Configuration 实体有个 setDefaultEncoding() 方洞雹法,文件流也能设置编码。
例睁颤弯如:
File file = new File("悉闷e:/freemarkers/");
Configuration cfg = new Configuration();
cfg.setDirectoryForTemplateLoading(file);
cfg.setDefaultEncoding("UTF-8");
Template template = cfg.getTemplate("test.ftl");
template.setEncoding("UTF-8");
FileOutputStream fos= new FileOutputStream("e:/htmls/test.html");
OutputStreamWriter osw =new OutputStreamWriter(fos, "UTF-8");
BufferedWriter bw =new BufferedWriter(osw, 1024);
Map<String,Object> tagMap = new HashMap<String, Object>();
template.process(tagMap, bw);
bw.flush();
bw.close();
追问
这些我都设置过的,还是没用
追答
你自己有写filter类来控制请求和响应的代码没?
黢黑的夜晚
2013-02-20
知道答主
回答量:4
采纳率:0%
帮助的人:6377
展开全部
你在写中晌纳文的时候,你那个模板文件的编拿谨乱码改为UTF-8,就是以UTF-8的消档编码写入中文,那么转换后的html就不是乱码了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
云朵儿呀
2011-11-22
知道答主
回答量:16
采纳率:0%
帮助的人:16.7万
展开全部
页面编码问题,如:gb2312、utf-8来回换一下试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式