java操作word的组件(或技术)有哪些?
比如我已经知道的:
1、aspose
2、jacob
3、itextjava操作word

解决方案 »

  1.   

    poi
      

  2.   

    我用过 jacob  还比较好使吧
      

  3.   

    poi技术吧,挺好用的,也很简单。。poi可以操作word,excel等等
      

  4.   

    1.1 添加poi支持:包下载地址 http://www.apache.org/dyn/closer.cgi/poi/release/1.2 POI对Excel文件的读取操作比较方便,POI还提供对Word的DOC格式文件的读取。但在它的发行版本中没有发布对Word支持的模块,需要另外下载一个POI的扩展的Jar包。下载地址为 http://www.ibiblio.org/maven2/org/textmining/tm-extractors/0.4/ 下载extractors-0.4_zip这个文件package com.ray.poi.util;import java.io.ByteArrayInputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;import org.apache.poi.poifs.filesystem.DirectoryEntry;
    import org.apache.poi.poifs.filesystem.DocumentEntry;
    import org.apache.poi.poifs.filesystem.POIFSFileSystem;
    import org.textmining.text.extraction.WordExtractor;/**
    * 读写doc
    * @author wangzonghao
    *
    */
    public class POIWordUtil {
    /**
      * 读入doc
      * @param doc
      * @return
      * @throws Exception
      */
    public static String readDoc(String doc) throws Exception {
         // 创建输入流读取DOC文件
          FileInputStream in = new FileInputStream(new File(doc));
          WordExtractor extractor = null;
          String text = null;
         // 创建WordExtractor
          extractor = new WordExtractor();
         // 对DOC文件进行提取
          text = extractor.extractText(in);
         return text;
    }
    /**
      * 写出doc
      * @param path
      * @param content
      * @return
      */
    public static boolean writeDoc(String path, String content) { 
         boolean w = false; 
        try {     // byte b[] = content.getBytes("ISO-8859-1"); 
        byte b[] = content.getBytes();     ByteArrayInputStream bais = new ByteArrayInputStream(b);     POIFSFileSystem fs = new POIFSFileSystem(); 
        DirectoryEntry directory = fs.getRoot();     DocumentEntry de = directory.createDocument("WordDocument", bais);     FileOutputStream ostream = new FileOutputStream(path);     fs.writeFilesystem(ostream);     bais.close(); 
        ostream.close();     } catch (IOException e) { 
        e.printStackTrace(); 
        } 
        return w; 
        } }
    测试package com.ray.poi.util;import junit.framework.TestCase;public class POIUtilTest extends TestCase {public void testReadDoc() {
      try{
                String text = POIWordUtil.readDoc("E:/work_space/poi/com/ray/poi/util/demo.doc");
                System.out.println(text);
             }catch(Exception e){
                 e.printStackTrace();
             }}public void testWriteDoc() {
         String wr;
      try {
       wr = POIWordUtil.readDoc("E:/work_space/poi/com/ray/poi/util/demo.doc");    boolean b = POIWordUtil.writeDoc("c:\\demo.doc",wr); 
      } catch (Exception e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      }}}
    你仔细读下上面的代码,应该就会使用poi了。。祝你早日成为牛人。。
      

  5.   

    还有pageoffice,很好用的,可以跨很多浏览器的,网上有很多它的示例代码搜搜看