Java 动态生成 复杂 .doc文件

Java 动态生成 复杂 .doc文件
阅读目录

1.word 里面调整好排版,包括你想生成的动态部分,还有一些不用生成的规则性的文字
2. 将 word 文档保存为 xml
3.用 Firstobject free XML edito 打开,将你需要动态生成的字段打上标记,${} 这样就可以
4.将 xml 文件更改后缀名 为 .ftl, 然后引用到你的项目中
项目中需要用 java 程序生成doc 文件,百度一番,FreeMarker 的评价比较高,FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出,至于想详细了解 FreeMarker 的请去问百度…..

 这篇博文主要是总结自己在用网上例子时遇到的坑。吃水不忘挖井人,还是要感谢分享技术的前辈。

原文链接:

http://www.360doc.com/content/13/0731/10/13247663_303740756.shtml [博主博客很漂亮,赞一个]

参照过的例子链接:

1.http://www.360doc.com/content/13/0731/10/13247663_303740756.shtml

2.http://blog.csdn.net/zhanwentao2/article/details/7255432

FreeMarker.jar 下载地址:

1.http://download.csdn.net/detail/pc159321/7077059

2.http://download.csdn.net/detail/zhaoshe/3153176

主要思路如下:

回到顶部
1.word 里面调整好排版,包括你想生成的动态部分,还有一些不用生成的规则性的文字

回到顶部
2. 将 word 文档保存为 xml

回到顶部
3.用 Firstobject free XML edito 打开,将你需要动态生成的字段打上标记,${} 这样就可以

FreeMarker 还支持需要丰富的标记,如果你想展示更复杂和丰富的内容,都可以实现;

Firstobject free XML edito 友情下载链接:

http://www.cnblogs.com/know-life-death/archive/2012/02/01/2334742.html

回到顶部
4.将 xml 文件更改后缀名 为 .ftl, 然后引用到你的项目中

需要注意的问题:

a. word 版本不能低于 2003 ,因为 2003 才开始支持 xml;

b.用 Firstobject free XML edito 打开 要编辑的 xml 文件时,记得xml 不要放在含有中文路径的目录中【编辑器会无响应,然后你知道的…..】。

实现的代码如下:

复制代码
1 import java.io.BufferedWriter;
2 import java.io.File;
3 import java.io.FileOutputStream;
4 import java.io.OutputStreamWriter;
5 import java.io.Writer;
6 import java.sql.Connection;
7 import java.sql.ResultSet;
8 import java.util.HashMap;
9 import java.util.Map;
10
11 import cn.sina.ttjava_13.database.DB;
12 import freemarker.template.Configuration;
13 import freemarker.template.Template;
14
15 public class WordTest {
16
17 private Configuration configuration = null;
18 private Connection conn;
19 private ResultSet res;
20
21 public WordTest() {
22 configuration = new Configuration();
23 configuration.setDefaultEncoding(“UTF-8”);
24 }
25
26 public void createWord() {
27 Map

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值