本人最近做的一个项目,需要把数据里里的数据读出来,经过加工,以word格式输出。 这几天一直都在找,没有找到好的解决方案!偶尔发现了java2word,咱们国人开发的一个包,今天使用一下,非常简单!比网上介绍的poi,jacob等解决方按容易上手多了!最然功能不是很多,但应该满足一般的需求。遗憾的是不支持07格式,如果你需要读写07格式,可以用一下openxml4j这个包,在这里不做多介绍哦 。
下面是java2word的介绍:
java2word 是一个在java程序中调用 MS Office Word 文档的组件(类库)。该组件提供了一组简单的接口,以便java程序调用他的服务操作Word 文档。
这些服务包括:
打开文档、新建文档、
查找文字、替换文字,
插入文字、插入图片、插入表格,
在书签处插入文字、插入图片、插入表格等。
填充数据到表格中
读取表格数据
1.1版增强的功能:
指定文本样式,指定表格样式。如此,则可动态排版word文档。
填充表格数据时,可指定从哪行哪列开始填充。配合输入数据的大小,你可以修改表中的任意部分,甚至只修改一个单元格的内容。
合并单元格。
好了包弄完以后,我们看第一个程序:
import
com.heavenlake.wordapi.Document;
public
class
test {
public
test() {
Document doc
=
null
;
try
{
doc
=
new
Document();
doc.open(
"
e:/test.doc
"
);
//
打开文件
doc.insert(
"
第一章:宪政概论
"
,
"
biaoti1
"
);
//
插入文字
doc.insertAtBookmark(
"
testbookm
"
,
"
第一章:宪政概论
"
,
"
标题1
"
);
doc.insertAtBookmark(
"
testbookm
"
,
new
java.io.File(
"
E:/照片/长白山/DSC00663.JPG
"
));
//
插入图片
}
catch
(Exception e) {
e.printStackTrace();
}
finally
{
try
{
if
(doc
!=
null
) doc.close(
true
);
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
public
static
void
main(String[] args) {
test test1
=
new
test();
}
}
怎么样,代码很简单。短短几句就完成插入文字,图片,标题的功能!不过做项目化,最好先定义一个word模板,这样有利于排版。而且其也可以调用模板的样式。当然其功能还远不入这些,大家可以看一下它的api文档。值得注意一点的是,输出的word不支持07格式。