freemarker 中文乱码问题解决办法

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

freemarker的Configurartion中有默认的编码为ISO-8859-1所以读取有中文的模板时就会变乱码。

解决办法一:通过修改配置文件freemarker.properties,修改默认编码:

locale=zh_CN
default_encoding=gbk
number_format=#
date_format=yyyy-MM-dd
time_format=HH:mm:Ss
datetime_format=yyyy-MM-dd HH:mm:Ss

解决办法二:通过spring或其他第三方工具配置:

<bean id="freemakerCongfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"> <property name="templateLoaderPath"> <value>/WEB-INF/web/</value> </property> <property name="freemarkerSettings"> <props> <prop key="defaultEncoding">gbk</prop> </props> </property> </bean>

注:org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer在spring-webmvc.jar 包里面,项目要导入这个jar包才可以,或者会找不到类。

另外,页面编码和charset要跟上面配置的一致才可以,<meta http-equiv="Content-type" content="text/html; charset=gbk">

注意:还有一种常见的导致乱码问题:编辑器或文件保存的编码和页面设置的编码不一致会导致乱码,例如文件的编码(用记事本打开,另存为可以看到文件的编码)为UTF-8而页面的charset=gbk就会出现乱码,反之也一样


类org.ofbiz.webapp.ftl.FreeMarkerViewHandler
的public void render(

有 template = config.getTemplate(page, UtilHttp.getLocale(request));

然后找org.ofbiz.base.util.UtilHttp的
getLocale方法,5个,调来调去昏。。。。

猜吧,把 -Dfile.encoding=UTF-8 加入启动的shell,可以在ftl中使用utf-8编码了

 

 

freemarker+Aspose.word实现模板生成word并转成pdf 使用itext模板导出pdf适用范围业务生成的 pdf 是具有固定格式或者模板的文字及其图片等内容,使用模板,只需要将不一致的地方改成文本域,然后进行文字填充就可以了;如果涉及的业务不能有模块化可以提取出来东西,从开头一步一步去绘画。参考链接JAVA 使用Itext模板生成pdf,解决图片插入,文本域超出字体缩放,半自动换行[https://blog.csdn.net/a_lllk/article/details/109450972] 阅读详情

相关推荐

freemarker中文乱码问题

freemarker (1)解决输出中文乱码问题:      freemarker乱码的原因: 没有使用正确的编码格式读取模版文件,表现为模版中的中文乱码 解决方法:在classpath上放置一个文件freemarker.properties,在里面写上模版文件的编码方式,比如 default_encoding=UTF-8 locale=zh_CN 注意:eclipse中

小糊涂蛋大糊涂神的专栏 1万+

java freemarker 乱码_FreeMarker生成静态页面中文乱码解决办法

FreeMarker生成静态页面中文乱码解决办法FreeMarker在生成静态页面的时候如果编码不一致则会产生乱码,特别是在处理中文的时候,如果不指定相同的编码,那么一定会产生中文乱码,所以在开发当中应该尽量保证编码一致,以下几个方面可以避免乱码:1. ftl文件编码设置Window->Preferences->Workspace->Text file encoding配置 Te...

weixin_33099015的博客 953

从DOCX原理解决FreeMarker生成WORD乱码问题

利用freemarker模板引擎生成word乱码避坑

qq_41364367的博客 1123

freemarker乱码问题

数据不是乱码,模板文件中的中文乱码,是模板的文件格式不正确造成的; 其他的地方编码设置: config.setEncoding(Locale.CHINA, "UTF-8");         config.setDirectoryForTemplateLoading(new File(base+"configuration\\template\\jsp"

neweastsun的专栏 1397

freemarker 解决中文乱码问题(java开发)

Template template = config.getTemplate(templateName, "utf-8");

Mrzhang0419的专栏 1008

freemarker生成静态页面中文乱码(固定中文和动态生成的中文乱码)

现象: freemarker生成静态页面中文乱码(固定中文和动态生成的中文乱码) 检查: 1,FreeMarkerConfigurer已经初始化, 设置属性UTF-8 <bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfig...

weixin_30443895的博客 239

freemarker生成word

目录   一、word文档无法打开 1、根据架构,xml数据无效 2、xml非法字符 之 中文乱码 二、configuration 路径设置 一、word文档无法打开 1、根据架构,xml数据无效 2、xml非法字符 之 中文乱码 (1)configuration.setDefaultEncoding("UTF-8"); (2)Template t = configurati...

qq_22599199的博客 2589

Spring MVC 与 FreeMarker 整合

通过以上步骤,即可完成 Spring MVC 与 FreeMarker 的无缝整合,实现动态模板渲染。

yuren_xia的博客 1382

Freemarker+PDF修仙指南:从模板小厮到PDF生成大能的终极奥义

这套组合仙术——用模板引擎生成动态HTML,再一键转化为专业PDF!从此告别手动调整页眉页脚的苦日子,让你的报表优雅如仙门典籍!各位在HTML和PDF之间反复横跳的道友们!

十年磨一剑,java开发各种业务系统 647
上一篇: 保存一些自己常用的网址
struts2jared
博客等级 码龄18年 135粉丝 6原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值