java实现在线预览--poi实现word、excel、ppt转html

java实现在线预览

- -之poi实现word、excel、ppt转html

###简介
java实现在线预览功能是一个大家在工作中也许会遇到的需求,如果公司有钱,直接使用付费的第三方软件或者云在线预览服务就可以了,例如永中office、office web 365(http://www.officeweb365.com/)他们都有云在线预览服务,就是要钱0.0
如果想要免费的,可以用openoffice,还需要借助其他的工具(例如swfTools、FlexPaper等)才行,可参考这篇文章http://blog.csdn.net/z69183787/article/details/17468039,写的挺细的,实现原理就是:
1.通过第三方工具openoffice,将word、excel、ppt、txt等文件转换为pdf文件;
2.通过swfTools将pdf文件转换成swf格式的文件;
3.通过FlexPaper文档组件在页面上进行展示。
当然如果装了Adobe Reader XI,那把pdf直接拖到浏览器页面就可以直接打开预览,这样就不需要步骤2、3了,前提就是客户装了Adobe Reader XI这个pdf阅读器。
我这里介绍通过poi实现word、excel、ppt转html,这样就可以放在页面上了。

###word转html

package wordToHtml;

import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.List;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.apache.commons.io.FileUtils;
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.usermodel.Picture;
import org.apache.poi.hwpf.usermodel.PictureType;
import org.w3c.dom.Document;
public class PoiWordToHtml {
 public static void main(String[] args) throws Throwable {
  final String path = "D:\\poi-test\\wordToHtml\\";
  final String file = "人员选择系分.doc";
  InputStream input = new FileInputStream(path + file);
  HWPFDocument wordDocument = new HWPFDocument(input);
  WordToHtmlConverter wordToHtmlConverter = new WordToHtmlConverter(
    Docu
  • 3325
    点赞
  • 519
    收藏
    觉得还不错? 一键收藏
  • 83
    评论
使用POIWord文档换为HTML需要以下步骤: 1. 导入POI库和相关依赖库。 2. 读取Word文档,创建XWPFDocument对象。 3. 创建XHTMLContentHandler对象,用于处理Word文档中的内容。 4. 创建WordToHtmlConverter对象,并将XWPFDocument和XHTMLContentHandler作为参数传入。 5. 调用WordToHtmlConverter的processDocument方法,将Word文档换为HTML。 6. 获取HTML内容,可以将其保存到文件或输出到页面。 以下是一个简单的代码示例: ```java import java.io.*; import org.apache.poi.xwpf.converter.core.*; import org.apache.poi.xwpf.converter.xhtml.*; import org.apache.poi.xwpf.usermodel.*; public class WordToHtml { public static void main(String[] args) throws Exception { // 读取Word文档 XWPFDocument document = new XWPFDocument(new FileInputStream("input.docx")); // 创建XHTMLContentHandler对象 OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream("output.html"), "UTF-8"); XHTMLContentHandler contentHandler = new XHTMLContentHandler(writer, null); // 创建WordToHtmlConverter对象 WordToHtmlConverter converter = new WordToHtmlConverter(DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument()); converter.setParagraphCssStyle("text-align: justify;"); // 设置段落样式 // 将XHTMLContentHandler设置为converter的内容处理器 converter.processDocument(document, contentHandler); // 获取HTML内容并输出 String html = writer.toString(); System.out.println(html); // 关闭流 writer.close(); document.close(); } } ``` 注意:该示例代码中的XWPFDocument仅适用于处理.docx格式的Word文档,如果需要处理.doc格式的Word文档,需要使用HWPFDocument类。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 83
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值