java如何实现在线预览之poi实现,excel, ppt转html的方法

  介绍

这篇文章将为大家详细讲解有关java如何实现在线预览之poi实现,excel, ppt转html的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

java实现在线预览

——之poi实现,excel, ppt转html,具体内容如下所示:

<强> # # #简介

java实现在线预览功能是一个大家在工作中也许会遇到的需求,如果公司有钱,直接使用付费的第三方软件或者云在线预览服务就可以了,例如永中办公室,办公室网络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习这个pdf阅读器。

我这里介绍通过poi实现,excel, ppt转html,这样就可以放在页面上了。

<强> # # #字转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 并不知道;   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  +,文件);   ,HWPFDocument  wordDocument =, new  HWPFDocument(输入);   ,WordToHtmlConverter  WordToHtmlConverter =, new  WordToHtmlConverter (   .newDocumentBuilder DocumentBuilderFactory.newInstance才能()()   ,,.newDocument ());   ,wordToHtmlConverter.setPicturesManager (new  PicturesManager (), {   public 才能;String  savePicture (byte[],内容,PictureType  pictureType,   ,,String  suggestedName, float  widthInches,, float  heightInches), {   return 才能;suggestedName;   ,,}   ,});   ,wordToHtmlConverter.processDocument (wordDocument);   ,List  pics =, wordDocument.getPicturesTable () .getAllPictures ();   ,if  (pics  !=, null), {   for 才能;(int 小姐:=,0;,小姐:& lt;, pics.size();,我+ +),{   Picture 才能;pic =,(图片),pics.get(我);   try {才能   ,,pic.writeImageContent (new  FileOutputStream(路径   ,,,+,pic.suggestFullFileName ()));   ,,},catch  (FileNotFoundException  e), {   ,,e.printStackTrace ();   ,,}   ,,}   ,}   ,Document  htmlDocument =, wordToHtmlConverter.getDocument ();   ,ByteArrayOutputStream  outStream =, new  ByteArrayOutputStream ();   ,DOMSource  DOMSource =, new  DOMSource (htmlDocument);   ,StreamResult  StreamResult =, new  StreamResult (outStream);   ,TransformerFactory  tf =, TransformerFactory.newInstance ();   ,Transformer  serializer =, tf.newTransformer ();   ,serializer.setOutputProperty (OutputKeys.ENCODING,“utf-8");   ,serializer.setOutputProperty (OutputKeys.INDENT,“yes");   ,serializer.setOutputProperty (OutputKeys.METHOD,“html");   ,serializer.transform (domSource, streamResult);   ,outStream.close ();   ,String  content =, new 字符串(outStream.toByteArray ());   ,FileUtils.writeStringToFile (new 文件路径,,“人员选择系分.html"),,,,“utf-8");   ,}   }

java如何实现在线预览之poi实现,excel, ppt转html的方法