本人最近做的一个项目,需要把数据里里的数据读出来,经过加工,以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格式。