java操作word文档

原创 2007年10月10日 16:42:00

package com.yxm.word;

import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;

/**
 *
 * @author yuxueming
 *
 */

public class FileExtracter{  
 
 private ActiveXComponent wordOpen = null;
 private Dispatch dispatch = null;
 
 public FileExtracter(){
  wordOpen = new ActiveXComponent("Word.Application"); //指定类型
 } 
 
 /**
  * 打开word文件
  * @param filePath
  */
 
 public void openWord(String filePath){
  try{  
   wordOpen.setProperty("Visible",true);
   dispatch = wordOpen.getProperty("Documents").toDispatch();
   Dispatch.invoke(dispatch,"Open",Dispatch.Method,new Object[]{filePath},new int[1]);
  }
  catch(Exception e){
   e.printStackTrace();
  }finally{
   closeDispatch(filePath);
  }
 }
 
 /**
  * 转换成TXT文件
  * @param inputFIle
  * @param outputFile
  */
 
 public  void extractDoc(String inputFIle,String outputFile)
 {
     boolean flag = false;               
     try {       
     wordOpen.setProperty("Visible", false);        // 设置word不可见     
     dispatch = wordOpen.getProperty("Documents").toDispatch();   // 打开word文件
        Dispatch doc2 = Dispatch.invoke(dispatch,"Open", Dispatch.Method, new Object[] { inputFIle, false,
          true}, new int[1]).toDispatch();             // 作为txt格式保存到临时文件 
        Dispatch.invoke(doc2, "SaveAs", Dispatch.Method, new Object[] {outputFile, new Variant(7) }, new int[1]); //关闭word
       
        Variant f = new Variant(false);
        Dispatch.call(doc2, "Close", f);
        flag = true;
     } catch (Exception e) {
        e.printStackTrace();
     } finally {
      wordOpen.invoke("Quit", new Variant[] {});
     }
     if (flag == true) {
        System.out.println("Transformed Successfully");
     } else {
        System.out.println("Transform Failed");
     }

 }
 /**
  * 关闭当前文件
  * @param filePath
  */
 public void closeDispatch(String filePath){
  Dispatch.call(dispatch,"close",filePath);
 }
 
 public static void main(String [] args ){
//  new FileExtracter().openWord("f:/rz.doc");
  new FileExtracter().extractDoc("f:/rz.doc", "f:/rz.txt");
 }
}    

java将WORD文档转换成pdf文件

总结对jacob和Itext学习总结.本文试验的是将WORD转换成PDF文件.实现思路一、先将WORD文档转换成HMTL文件格式(参阅我的前一文《JAVA操作WORD文档)。二、用流读取HTML文件。...
  • cd_yuxueming
  • cd_yuxueming
  • 2007-10-14 11:31:00
  • 28789

java对word文档的操作

springmvc controller层 类在org.apache.poi.xwpf包下 POI在读写word docx文件时是通过xwpf模块来进行的,其核心是XWPFDocument。一个X...
  • heping_csdn
  • heping_csdn
  • 2018-01-08 18:07:06
  • 1098

java读写word文档,完美解决方案

   本人最近做的一个项目,需要把数据里里的数据读出来,经过加工,以word格式输出。 这几天一直都在找,没有找到好的解决方案!偶尔发现了java2word,咱们国人开发的一个包,今天使用一下,非常简...
  • smartcat86
  • smartcat86
  • 2007-10-27 12:10:00
  • 60498

java操作word

docx4j
  • SuperVictim
  • SuperVictim
  • 2016-11-05 20:04:38
  • 3551

java操作word文档通用工具类

package cn.com.test.util; import java.io.ByteArrayOutputStream; import java.io.File; import java.io...
  • Rodge_Rom
  • Rodge_Rom
  • 2017-12-24 10:14:49
  • 261

java 使用jacod操作word

新建项目之前,有两件事要先做好: 1:需要先下载用到的包:jacob.jar,最新版本是1.8的,链接:https://sourceforge.net/projects/jacob-project/...
  • qq_36759871
  • qq_36759871
  • 2017-03-20 16:52:48
  • 823

利用Java读取并写入Word文件

java 读取Word,写入Word
  • xiyushiyi
  • xiyushiyi
  • 2014-11-26 17:54:36
  • 49933

Java Web项目中使用Freemarker生成Word文档

Web项目中生成Word文档的操作屡见不鲜,基于Java的解决方案也是很多的,包括使用Jacob、Apache POI、Java2Word、iText等各种方式,其实在从Office 2003开始,就...
  • jackfrued
  • jackfrued
  • 2014-09-21 15:33:20
  • 66577

经验总结java利用jacob操作word文件

想用java操作word文件?jacob是个不错的选择,也就是java-com桥,你可以在http://sourceforge.net/projects/jacob-project/下载,我下载的版本...
  • suofiya2008
  • suofiya2008
  • 2009-04-07 09:47:00
  • 6416

java word操作总结

java word操作总结
  • peterxiaoq
  • peterxiaoq
  • 2014-09-19 09:36:43
  • 2373
收藏助手
不良信息举报
您举报文章:java操作word文档
举报原因:
原因补充:

(最多只允许输入30个字)