介绍
这篇文章将为大家详细讲解有关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的方法