`
zcmor
  • 浏览: 21369 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

freemaker生成word 和 excel

阅读更多
   最近正在用freemarker写一些小玩意儿,突然想到那么是不是可以用它来生成万恶的excel和world呢?在网上找了找,还真有人这么干过,而且干成功了。索性我也来试试。
   按照惯例还是来个helloworld吧。
    1)新建一个word,我用的是word 2010.在里面写个name。
    2)将它另存为world 2003 XML文档。
    3)将它拷贝到eclipse中,打开然后对他format一下,生成个好看点的格式。然后命名为testw.vm
    4)将刚才的name 替换为${name}。
    5) 用freemarker 处理该模板。源码如下:
// 要填入模本的数据文件
Map<String, Object> dataMap = new HashMap<String, Object>();
Configuration configuration = new Configuration();
configuration.setDirectoryForTemplateLoading(new File("resources/"));
configuration.setDefaultEncoding("UTF-8");//这里很重要
dataMap.put("name", "goddy");
dataMap.put("age", "11");
Template t = null;
try {
// test.ftl为要装载的模板
t = configuration.getTemplate("teste.vm");
} catch (IOException e) {
e.printStackTrace();
}
// 输出文档路径及名称
File outFile = new File("D:/outFile.doc");
Writer out = null;
out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(
outFile), "UTF-8"));//这里很重要

t.process(dataMap, out);
     6)将源码贴到java过程中,将模板(testw.vm)拷贝到resources目录下(和src目录平级)。运行一把就可以看到在D盘看到outFile.doc文件了。打开一看,果然没有问题。如果出现该word文件打不开的情况就要注意,另存为的应该是2003版的xml,然后编码应该都是UTF-8,生成的应该是doc结尾的文档。
     7)生成excel和word一样,需要注意的就是选择2003版的xml,生成的文件为xls格式的文档,其他的和生成world的一样即可。
   按照这几个步骤就应该能生成基本的文档了,有了helloworld其他的应该都不是问题了~~~
  
分享到:
评论

相关推荐

    springboot中使用freemarker动态生成word文档,以及使用POI导出自定义格式Excel

    Springboot项目中: 1. 使用Apache POI 3.9 自定义样式导出Excel文件...2. 使用freemarker动态生成word .doc文档(带图片Word以及复杂格式word) 详细说明见个人博客及 github: https://github.com/DuebassLei/excel-poi

    实用方便freemarker.jar freemarker架包 freemarker生成excel、word、html、xml例子

    freemarker.jar freemarker架包 freemarker生成excel、word、html、xml简单例子freemarker生成excel、word、html、xml简单例子

    FreeMarker文档(word,excel)生成器

    可利用foxe_CHS.exe制作word,excel文件模板,利用FreeMarker技术动态生成我们想要的word,excel文档,可用在很多地方,比如,代码自动生成(不需要使用word,excel格式)、设计文档生成、excel报表生成等等,就看你怎么...

    POI读取excel,利用Freemarker建立word模板(带图片),生成word文档,再合并成一个word文档(源码)

    Java语言利用POI读取excel文档,利用Freemarker建立word模板(带图片),excel每一行数据生成单个word文档,再利用POI合并成一个word文档(源码); 博客地址:...

    freemarker模板技术生成复杂word文档---解决了编码问题

    总结,之前在网上查到这个资料怎么调试都失败,后来经过反复查找发现是编码问题导致生成word格式错误,已经修正,希望能给大家带来帮助。 效率测试生成100000行数据大概4000毫秒左右 完整程序代码已经上传! 关于...

    freemarker.jar freemarker架包 freemarker生成excel、word、html、xml简单例子

    freemarker生成excel、word、html、xml简单例子

    使用freemarker生成word文档,源代码+jar包+说明文档及注意事项

    使用freemarker生成word ,并集成struts2 同时生成及下载文档 资料附有Java源代码和自己总结的使用说明及注意事项 大至预览如下: 1、用word编辑好模板 普通字符串替换为 ${string} 表格循环用标签 姓名:${...

    freemarker生成复杂word

    POI读取Word文档比较适合、对于生成文档样式比较难控制,iText操作Excel还可以,对Word的操作功能有限,JACOB操作Word实现复杂,并且无法将服务部署到Linux平台,要求安装office,对于实现固定格式的报表实现困难,...

    JAVA项目代码绘制PDF和通过freemarker动态生成PDF

    对于没有使用宏、函数等word、excel,需要按模板动态生成word、excel、html,只需要一个freemarker,先将word、excel、html等另存为**xml**,即可使用模板动态生成文件,目前xlsx是不支持的 4. PdfTemplate 对于不会...

    Eclipse模板化生成Word&PDF;文档.zip

    Java后端使用freemarker基于.ftl配置文件模板化模式生成文档,内容可以包括文本、图片、表文本格、目录、附件(excel等文件),适用于已经规范化的各种报告等文件;将后端生成的xml格式文档转换为word格式以及pdf...

    完美解决方案:Java生成复杂Word文档

    客户要求用程序生成标准的word文档,要能打印,而且不能变形,以前用过很多...经测试这样方式生成的word文档完全符合office标准,样式、内容控制非常便利,打印也不会变形,生 成的文档和office中编辑文档完全一样。

    Java导出Word文档的实现.docx

    利用Apache POI和FreeMarker模板引擎; 3. 第三方报表工具。 上面的几种方式虽然可以实现Word文档的导出,但有以下缺点: 第一种方式操作简单,但也只能生成简单的Word文档,无法生成有表格的Word文档; 第二种...

    ftl模板生成的word文档打不开

    使用ftl用ftl模板生成的word文档打不开,一直未响应的可能问题如下: 1.word模板另存为xml格式文件的时候,选择Word 2003 XML格式(兼容问题) 2.模板中有图片的时候,将ftl文件中图片的base64编码改成变量${xxx} ...

    JavaUtilsProject-master.zip

    FreeMarker生成word,案例生成文字、表格、图片。还包含有excel的生成等一些util工具类,导入IDEA直接运行对应的main函数就行

    word转pdf所需的jar

    操作PDF通常使用的是ITEXT插件,该插件可以操作复杂的PDF,当然我们也可以通过freemarker来生成PDF也是可以的。但是最近的项目在打印合同的时候,只提供了word模板,然后打印PDF,期间需要读取数据,填充到Word文档中...

    Java报表生成解决方案

    该代码提供了word、excel、pdf三种类型的文档生成方案,其中word文档使用“freemarker + xml + 模板”技术;excel使用“POI + 模板”技术;pdf使用“freemarker + itext + flying saucer”技术

    java使用word模板导出个人简历

    java使用word模板导出个人简历 a、处理word2003模板导出doc文件 b、处理word2007模板导出docx文件

    一个可以直接运行的基于SpringMVC的web框架1.1.12

    Excel工具类 Word工具类 Java NIO实现socket工具类 分布式session jdk升级到1.7 嵌入式redis服务(只支持linux) 1.0.13 修改默认的beanName生成策略,controller参数扩展 1.0.14 分布式session使用zookeeper 1.0.15 ...

    基于SpringMVC的一个web框架

    Excel工具类 Word工具类 Java NIO实现socket工具类 分布式session jdk升级到1.7 嵌入式redis服务(只支持linux) 1.0.13 修改默认的beanName生成策略,controller参数扩展 1.0.14 分布式session使用zookeeper 1.0.15 ...

    可以直接运行的基于SpringMVC的web框架示例,也可以直接当公司框架

    Excel工具类 Word工具类 Java NIO实现socket工具类 分布式session jdk升级到1.7 嵌入式redis服务(只支持linux) 1.0.13 修改默认的beanName生成策略,controller参数扩展 1.0.14 分布式session使用zookeeper 1.0.15 ...

Global site tag (gtag.js) - Google Analytics