`

java+poi实现word转html显示

    博客分类:
  • poi
 
阅读更多
1.导jar包。

 
2.java文件。
package com.poi;
import java.io.BufferedWriter;  
import java.io.File;  
import java.io.FileInputStream;  
import java.io.FileNotFoundException;  
import java.io.FileOutputStream;  
import java.io.IOException;  
import java.io.OutputStream;  
import java.io.OutputStreamWriter;  
import java.util.List;  
  
import javax.xml.parsers.DocumentBuilderFactory;  
import javax.xml.parsers.ParserConfigurationException;  
import javax.xml.transform.OutputKeys;  
import javax.xml.transform.Transformer;  
import javax.xml.transform.TransformerException;  
import javax.xml.transform.TransformerFactory;  
import javax.xml.transform.dom.DOMSource;  
import javax.xml.transform.stream.StreamResult;  
  
import org.apache.commons.io.output.ByteArrayOutputStream;  
import org.apache.poi.hwpf.HWPFDocument;  
import org.apache.poi.hwpf.converter.PicturesManager;  
import org.apache.poi.hwpf.converter.WordToHtmlConverter;  
import org.apache.poi.hwpf.model.PicturesTable;  
import org.apache.poi.hwpf.usermodel.CharacterRun;  
import org.apache.poi.hwpf.usermodel.Paragraph;  
import org.apache.poi.hwpf.usermodel.Picture;  
import org.apache.poi.hwpf.usermodel.PictureType;  
import org.apache.poi.hwpf.usermodel.Range;  
import org.apache.poi.hwpf.usermodel.Table;  
import org.apache.poi.hwpf.usermodel.TableCell;  
import org.apache.poi.hwpf.usermodel.TableIterator;  
import org.apache.poi.hwpf.usermodel.TableRow;  
import org.w3c.dom.Document; 
/** 
 * @author: Chembo Huang 
 * @since: May 3, 2012 
 * @modified: May 3, 2012 
 * @version: 
 */  
public class Word2Html {  
  
    public static void main(String argv[]) {  
        try {  
            convert2Html("E://test//33.doc","E://test//abc.html");  
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
    }  
  
    public static void writeFile(String content, String path) {  
        FileOutputStream fos = null;  
        BufferedWriter bw = null;  
        try {  
            File file = new File(path);  
            fos = new FileOutputStream(file);  
            bw = new BufferedWriter(new OutputStreamWriter(fos,"GB2312"));  
            bw.write(content);  
        } catch (FileNotFoundException fnfe) {  
            fnfe.printStackTrace();  
        } catch (IOException ioe) {  
            ioe.printStackTrace();  
        } finally {  
            try {  
                if (bw != null)  
                    bw.close();  
                if (fos != null)  
                    fos.close();  
            } catch (IOException ie) {  
            }  
        }  
    }  
  
    public static void convert2Html(String fileName, String outPutFile)  
            throws TransformerException, IOException,  
            ParserConfigurationException {  
        HWPFDocument wordDocument = new HWPFDocument(new FileInputStream(fileName));//WordToHtmlUtils.loadDoc(new FileInputStream(inputFile));  
        WordToHtmlConverter wordToHtmlConverter = new WordToHtmlConverter(  
                DocumentBuilderFactory.newInstance().newDocumentBuilder()  
                        .newDocument());  
         wordToHtmlConverter.setPicturesManager( new PicturesManager()  
         {  
             public String savePicture( byte[] content,  
                     PictureType pictureType, String suggestedName,  
                     float widthInches, float heightInches )  
             {  
                 return suggestedName;  
             }  
         } );  
        wordToHtmlConverter.processDocument(wordDocument);  
        //save pictures  
        List pics=wordDocument.getPicturesTable().getAllPictures();  
        if(pics!=null){  
            for(int i=0;i<pics.size();i++){  
                Picture pic = (Picture)pics.get(i);  
                System.out.println();  
                try {  
                    pic.writeImageContent(new FileOutputStream("E:/test/"  
                            + pic.suggestFullFileName()));  
                } catch (FileNotFoundException e) {  
                    e.printStackTrace();  
                }    
            }  
        }  
        Document htmlDocument = wordToHtmlConverter.getDocument();  
        ByteArrayOutputStream out = new ByteArrayOutputStream();  
        DOMSource domSource = new DOMSource(htmlDocument);  
        StreamResult streamResult = new StreamResult(out);  
  
        TransformerFactory tf = TransformerFactory.newInstance();  
        Transformer serializer = tf.newTransformer();  
        serializer.setOutputProperty(OutputKeys.ENCODING, "GB2312");  
        serializer.setOutputProperty(OutputKeys.INDENT, "yes");  
        serializer.setOutputProperty(OutputKeys.METHOD, "html");  
        serializer.transform(domSource, streamResult);  
        out.close();  
        writeFile(new String(out.toByteArray()), outPutFile);  
    }  
}  

 

  • 大小: 7 KB
分享到:
评论
4 楼 wjs876046992 2016-04-18  
Heart_Attack 写道
真会抄

文档编号没办法准确显示,有办法解决吗?
3 楼 wjs876046992 2016-04-18  
文档编号貌似读不去来,楼主有办法吗?
2 楼 itshu 2015-12-18  
docx咋弄
1 楼 Heart_Attack 2015-08-25  
真会抄

相关推荐

    java+poi实现word转换html兼容03和07

    Java POI库是Apache软件基金会开发的一个开源项目,主要用于处理Microsoft Office格式的文件,包括Word(.doc和.docx)、Excel(.xls和.xlsx)和PowerPoint(.ppt和.pptx)。在这个场景中,我们将重点讨论如何使用...

    Java+SpringBoot+POI进行word2html转换

    阅读建议:此资源以SpringBoot为底层技术框架,结合POI对word文档进行操作,学习其实现原理和内核,不仅是代码编写实现也更注重内容上的需求分析和方案设计,所以在学习的过程要结合这些内容一起来实践,并调试对应...

    poi完美word转html

    知识点:使用Apache POI将Word转换为HTML 一、Apache POI简介: Apache POI是Apache软件基金会的Jakarta项目中的一个子项目,它提供了一组API,用于处理Microsoft Office格式的文件,如DOCX、XLSX和PPTX等。其中,...

    java调用POI实现word转HTML.pdf

    Java调用POI实现Word转HTML Java调用POI(Apache POI)实现Word文档转换为HTML文档是一种常见的文档转换方式。 Apache POI是Apache软件基金会的一个开源项目,提供了对Microsoft Office文档格式的读写能力,包括...

    poi将word转换成html、样式 表格 图片处理

    Apache POI 提供了Java API,使得开发者可以在Java环境中读写Microsoft Office格式的文件。它支持多种文件格式,包括HSSF(旧版的Excel)、XSSF(新版本的Excel)、HWPF(旧版的Word)和XWPF(新版本的Word)等。 ...

    java POI完整示例,POI将word转HTML,数据库倒出数据到Excel等

    Java POI是一个强大的库,主要用于处理Microsoft Office格式的文件,如Word、Excel和PowerPoint。在本示例中,我们将探讨如何使用POI进行一系列操作,包括将Word文档转换为HTML,以及从数据库导出数据到Excel。 1. ...

    Java引用POI实现Word转Html方法

    NULL 博文链接:https://yanghongxia9.iteye.com/blog/1894185

    利用POI将word转换成html实现在线阅读

    本主题聚焦于如何利用Apache POI库将Word文档转换为HTML格式,从而实现在线阅读。Apache POI是一个强大的开源Java库,它允许开发者读取、写入以及创建Microsoft Office格式的文件,包括Word(.doc)文档。 首先,让...

    FreeMarker+poi 模板生成word+导入图片

    POI使用Java实现,使得开发者可以在Java环境中处理Office文档。 **FreeMarker + POI:模板生成Word并导入图片** 结合FreeMarker和Apache POI,我们可以创建一个模板Word文档,其中包含占位符,然后使用POI读取和...

    java+js实现word文档在线查看(前台+后台所使用到的jar包和js包)

    总的来说,实现Java和JavaScript结合的Word在线查看功能,需要Java后端使用Apache POI处理文档,前端通过Ajax或Fetch与后端交互,获取并展示HTML内容。同时,可选的JavaScript库可以帮助提升用户体验。在实际项目中...

    java使用poi将word文档转为html

    Java中的Apache POI库是一个强大的工具,用于读取、创建和修改Microsoft Office格式的文件,包括Word(.doc和.docx)文档。在本案例中,我们关注的是如何使用POI将Word文档转换为HTML格式。这个过程对于在网络上展示...

    java使用poi将word转为html

    java使用poi将word转为html

    POI实现word和excel在线预览

    总之,"POI实现word和excel在线预览"工具类是Java开发中一个实用的资源,它简化了在Web应用中实现Office文档在线预览的复杂性,提高了开发效率,同时也提供了良好的用户体验。通过理解和运用这个工具类,开发者可以...

    poi word转html例子及jar包

    Apache POI 是一个开源项目,专门用于处理Microsoft Office格式的文件,如Word(.doc、.docx)、Excel(.xls、.xlsx)和PowerPoint(.ppt、.pptx)。在Java环境中,Apache POI 提供了API,使得开发者能够读取、创建...

    基于poi实现word/excel转换为HTML(且兼容.doc.docx.xls.xlsx)

    本教程将深入探讨如何使用Apache POI库来实现这些文件向HTML的转换,以实现跨平台和浏览器的兼容性。 Apache POI 提供了HSSF和XSSF两个API,分别用于读写旧版的BIFF8格式(.xls)和新的OOXML格式(.xlsx)。对于...

    java使用POI实现html和word相互转换

    Java 使用 POI 实现 HTML 和 Word 相互转换 在本文中,我们将详细介绍如何使用 Java 和 Apache POI 库实现 HTML 和 Word 之间的相互转换。POI 库是一个流行的 Java 库,提供了许多实用的功能来处理 Microsoft ...

    java poi把word文档转化为html,支持doc。

    Java POI库是一个强大的工具,专门用于处理Microsoft Office格式的文件,包括Word(.doc和.docx)文档。在这个特定的场景中,我们利用POI将Word文档转换为HTML格式,以便于在网页上展示或者进行其他Web相关的操作。...

Global site tag (gtag.js) - Google Analytics