读取模板的时候有一个编码:

Template template = this.tempConfiguration.getTemplate(templatePath,"UTF-8");

生成文件的时候使用编码:

Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(htmlFile), "UTF-8"));

附(freeMarker生成静态文件的代码):

public class MakeHtml {
private Configuration tempConfiguration = new Configuration(); /**
* 注意:所有位置相对于根目录
* @param path servletPath
* @param data
* @param templatePath 模板路径
* @param targetHtmlPath 保存路径
*/
public void createHTML(String path, Map<String, Object> data,
String templatePath, String targetHtmlPath) {
try {
//filepath:ftl存放路径(/template/file/static)
System.out.println(path);
this.tempConfiguration.setDirectoryForTemplateLoading(new File(path+"/freeMarker"));
//templatePath:ftl文件名称(template.ftl)
Template template = this.tempConfiguration.getTemplate(templatePath,"UTF-8");
// 静态页面要存放的路径
File htmlFile = new File(path + File.separator + targetHtmlPath);
if(!htmlFile.getParentFile().exists()) {
htmlFile.getParentFile().mkdirs();
}
Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(htmlFile), "UTF-8"));
// 处理模版 map数据 ,输出流
template.process(data, out);
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
} public void setTempConfiguration(Configuration tempConfiguration) {
this.tempConfiguration = tempConfiguration;
}
}

FreeMarker 乱码解决方案 生成静态html文件的更多相关文章

  1. 比较ASP生成静态HTML文件的几种方法

    将动态页面转换生成静态Html文件有许多好处,比如生成html网页有利于被搜索引擎收录(特别是对接受动态参数的页面).前台访问时,脱离了数据访问,减轻对数据库访问的压力,加快网页打开速度. 当然,凡事 ...

  2. Makefile学习(二)----生成静态库文件

    Lunix下编译静态库文件: .o后缀文件:编译生成的中间代码文件: .a后缀文件:静态库文件,编译的时候会合到可执行程序中,文件比较大: .so后缀文件:动态库文件,只是一个指向,不会合到可执行程序 ...

  3. springmvc+freemarker生成静态html文件

    参考资料: http://mylfd.iteye.com/blog/1896501 http://www.cnblogs.com/xxt19970908/p/5553045.html 个人实践: 1. ...

  4. 减少服务器压力php生成静态xml文件

    一.引 言 在速度上,静态页面要比动态页面的比方php快很多,这是毫无疑问的,但是由于静态页面的灵活性较差,如果不借助数据库或其他的设备保存相关信息的话,整体的管理上比较繁琐,比方修改编辑.比方阅读权 ...

  5. c#生成静态html文件,封装类

    由于这段时间比较轻松,于是想到很多的企业网站,新闻网站需要将页面静态化,于是写了个封装类来实现静态文件的生成,思路比较简单,但未完善,网友可根据自己的思路将此类扩展,运用了简单工厂模式(本来刚开始看设 ...

  6. Java生成静态HTML文件

    private static final String FILEPATH = "/opt/nginx/html/banner/"; private static final Str ...

  7. .PHP生成静态html文件的方法

    1. [代码][PHP]代码     1,下面使用模版的一个方法!   <?php $fp = fopen ("templets.html","a");  ...

  8. IOS 生成静态库文件(.framework)

    http://blog.csdn.net/zwl492454828/article/details/55095422

  9. IOS 生成静态库文件(.a文件)

    http://www.cnblogs.com/lyy-5518/p/5459643.html

随机推荐

  1. OpenGL7-2-快速绘制

    代码下载 #include "CELLWinApp.hpp"#include <gl/GLU.h>#include <assert.h>#include & ...

  2. 【转】简单理解socket

    题外话 前几天和朋友聊天,朋友问我怎么最近不写博客了,一个是因为最近在忙着公司使用的一些控件的开发,浏览器兼容性搞死人:但主要是因为这段时间一直在看html5的东西,看到web socket时觉得很有 ...

  3. .Net Core 中的包、元包与框架(Packages, Metapackages and Frameworks)

    包,元包与框架 本文翻译自 Packages, Metapackages and Frameworks. .Net Core 是一种由 NuGet 包组成的平台.一些产品体验受益于代码包的细粒度定义, ...

  4. [ZZ+CH] Html5 canvas+js 时钟

    总之新Blog入驻以后,又开始老习惯,到处折腾自定义的空间,放些东西. 想起以前大一的时候做过一个Javascript的时间显示器,现在想做一个时钟,当然现在老奸巨猾,会先去看一看有前辈写过没. 前辈 ...

  5. Reset / Validate Buffer

    AL12

  6. ECSSHOP表结构

    ECSSHOP表结构 -- 表的结构 `ecs_account_log`CREATE TABLE IF NOT EXISTS `ecs_account_log` (`log_id` mediumint ...

  7. Mac下使用Web服务器性能/压力测试工具webbench、ab、siege

    Web开发,少不了的就是压力测试,它是评估一个产品是否合格上线的基本标准,下面我们来一一剖析他们的使用方式. 测试前,前面先把系统的端口限制数改大,看看Mac下面的默认限制 ulimit -a ope ...

  8. ACE_linux:UDP通信

    1.涉及类 ACE_INET_Addr//ACE网络地址ACE_SOCK_Dgram//ACE报文 2.简介 UDP通信时无需像TCP那样建立连接和关闭连接,TCP编程时需要通过accept和conn ...

  9. python学习之js从0开始

    <html> <head> <title>js页面</title> <script src="js/old_boy.js"&g ...

  10. dapper 自定义数据库字段和代码中Model字段不一致时候的mapping方法

    namespace YourNamespace { /// <summary> /// Uses the Name value of the ColumnAttribute specifi ...