package test;

import java.text.SimpleDateFormat;
import java.util.Date; import com.aspose.words.DataColumnCollection;
import com.aspose.words.DataRow;
import com.aspose.words.DataTable;
import com.aspose.words.Document;
import com.aspose.words.License;
import com.aspose.words.MailMerge; public class CreateWord {
public static void main(String[] args) { String tPath = "e:/a.doc";
String path = "e:/muban.doc"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date=sdf.format(new Date()); DataTable table=new DataTable("table");
DataColumnCollection dcc = table.getColumns();
dcc.add("col0"); //0 序号
dcc.add("col1"); //列1
dcc.add("col2"); //列2
dcc.add("col3"); //列3 for(int i=0;i<3;i++){
DataRow row = table.newRow(); //新增一行
row.set(0, i+1); //序号
row.set(1, "行"+(i+1)+"列1"); //列1
row.set(2, "行"+(i+1)+"列2"); //列2
row.set(3, "行"+(i+1)+"列3"); //列3
table.getRows().add( row ); //加入此行数据
} //模板文件和将要创建的新文件
String template = path; //可以是doc或docx
String destdoc = tPath; //可以是doc或docx
Document doc;
try{
//第一步 加载授权文件
License license = new License();
license.setLicense( "e:/lic.xml" );
System.out.println("授权成功");
System.out.println("Start create Word...");
//第二步 读取word模板文件,可以是.doc或者.docx
doc = new Document( template );
//合并模版,相当于页面的渲染
MailMerge mm = doc.getMailMerge();
mm.executeWithRegions( table ); //调用接口 //提供数据源
String[] ks = {"date","content"};
Object[] vs = {date,"hello,word"};
mm.execute(ks, vs);
doc.save( destdoc );
System.out.println("End create Word...");
}catch (Exception e) {
e.printStackTrace();
} }
}

java创建word文档,首先要有文档模板。

创建一个普通的word文档后,插入域,选择mergeField,输入域名(用于和代码中对应)

文档模板建好后效果如下:

可以插入文字、表格和图片,这里没有显示插入图片的功能。

创建好模板后,执行代码,效果如下:

这样,word文档就被创建成功了。

[java,2017-05-04] 创建word文档的更多相关文章

  1. Java 后台创建word 文档

    ---恢复内容开始--- Java 后台创建 word 文档 自己总结  网上查阅的文档 分享POI 教程地址:http://www.tuicool.com/articles/emqaEf6 方式一. ...

  2. Java jacob调用打印机打印word文档

    前面说了Java如何生成复杂的Word文档,今年记录下Java如何调用打印机打印word文档. 起初用的是自带的PrintJob,但是系统提供的打印机制并不成熟完整.网上的代码也是千篇一律,在我的打印 ...

  3. C#实现通过模板自动创建Word文档的方法

    原文地址:http://www.jb51.net/article/55332.htm   本文实例讲述了C#实现通过模板自动创建Word文档的方法,是非常实用的技巧.分享给大家供大家参考.具体实现方法 ...

  4. 在C#中创建word文档

    在下面文档中  首先引用word组件:Microsoft.Office.Interop.Word 在头文件中写上 using Word = Microsoft.Office.Interop.Word; ...

  5. Java 用Freemarker完美导出word文档(带图片)

    Java  用Freemarker完美导出word文档(带图片) 前言 最近在项目中,因客户要求,将页面内容(如合同协议)导出成word,在网上翻了好多,感觉太乱了,不过最后还是较好解决了这个问题. ...

  6. OpenXml SDK 2.0 创建Word文档 添加页、段落、页眉和页脚

    using (WordprocessingDocument objWordDocument = WordprocessingDocument.Create(@"C:\********.doc ...

  7. Python批量创建word文档(2)- 加图片和表格

    Python创建word文档,任务要求:小杨在一家公司上班,每天都需要给不同的客户发送word文档,以告知客户每日黄金价格.要求在文档开始处给出banner条,价格日期等用表格表示.最后贴上自己的联系 ...

  8. Python批量创建word文档(1)- 纯文字

    Python创建word文档,任务要求:小杨在一家公司上班,每天都需要给不同的客户发送word文档,以告知客户每日黄金价格.最后贴上自己的联系方式.代码如下: 1 ''' 2 #python根据需求新 ...

  9. 使用Freemarker创建word文档

    最近做一个项目,本来是直接在网页上查看文本信息,然后给客户直接打印的,但是发现也许是浏览器还是打印机的原因,总之,有个客户打印出来的格式始终与其他的不同,没办法,最后想到了直接将数据库中的信息生成一个 ...

随机推荐

  1. 深入理解vue-router之keep-alive

    keep-alive 简介 keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染. 用法也很简单: ? 1 2 3 4 5 <keep-alive> ...

  2. RAID的详细配置

    一.RAID 1.RAID机制通过使用多硬盘并行工作的方式来提高硬盘的IO性能 2.RAID分为多种,称之为RAID level,RAID共有7级:RAID0~RAID6 3.常用的RAID级别有:R ...

  3. js对json字符串和json对象的转换

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. GeoServer java.io.IOException: No such resource: generic.sld No such resource: generic.sld

    原因是 发布 图层时 没有设置类型 默认 generic 但是我们的数据库中 没有这个 解决办法: 点击 图层--点击 相应的 图层名称 ---发布  --- WMS Settings 下面的Defa ...

  5. Java学习笔记36(jdbc快速入门)

    JDBC: Java DataBase Connectivity 是java程序连接存取数据库的应用程序接口 (是sun公司的程序员定义的一套操作数据库的规则,然后下面的各个公司如:mysql,sql ...

  6. Fibonacci Heaps

    Mergeable heapsA mergeable heap is any data structure that supports the following five operations,in ...

  7. thinkPHP 分页样式增加下拉列表

    $linkPage="  <select name='sldd' style='width:40px;height:30px;border:1px red block;' onchan ...

  8. C# 注册机功能开发,机器码设计

    前言 本文将使用一个NuGet公开的组件技术来实现机器码注册码功能开发,提供了一些简单的API,来方便的实现. 在Visual Studio 中的NuGet管理器中可以下载安装,也可以直接在NuGet ...

  9. python 前端 html

    web 服务本质: 浏览器发出请求--HTTP协议--服务端接收信息----服务端返回响应---服务端把HTML文件发给浏览器--浏览器渲染页面. HTML: 超文本标记语言是一种用于创建网页的标记语 ...

  10. 深入理解synchronized方法同步的是方法还是对象?

    一.运用synchronized关键字 首先我们来看看一个多线程中线程不安全的列子 代码如下: 共享数据类: public class NotSynchronizated extends Thread ...