java OpenOffice把word转html(Convert word to html )
2013-09-24 21:19
537 查看
1. 下载安装OpenOffice,网址http://download.openoffice.org/index.html。
2. 下载第三方工具包JODConverter,http://www.artofsolving.com/opensource/jodconverter。
3. 工程中导入JODConverter中的jar包(jodconverter-2.2.2\lib)
* commons-io
* jodconverter
* juh
* jurt
* ridl
* slf4j-api
* slf4j-jdk14
* unoil
* xstream
Java代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/19/aeb69bec34fda9f9b0ee0cb506e5a407.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202011/30/e948c2f150ee98c9ec2c03da96163d32.png)
![](http://dangry.iteye.com/images/spinner.gif)
import java.io.File; import java.net.ConnectException; import com.artofsolving.jodconverter.DocumentConverter; import com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection; import com.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection; import com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter; public class OfficeConverter { public static void main(String[] args) { File inputFile = new File("C:/test/yy.doc"); File outputFile = new File("C:/test/yy.html"); OpenOfficeConnection con = new SocketOpenOfficeConnection(8100); try { con.connect(); } catch (ConnectException e) { System.err.println("文件转换出错,请检查OpenOffice服务是否启动。"); e.printStackTrace(); } DocumentConverter converter = new OpenOfficeDocumentConverter(con); converter.convert(inputFile, outputFile); con.disconnect(); } }
4. 测试之前先启动OpenOffice服务
C:\Program Files\OpenOffice.org 3\program>soffice -headless -accept="socket,port=8100;urp;"
总结:使用OpenOffice作为转换引擎把word文档转换成html,比起使用微软的com组件有跨平台的优势,而且比Apache poi(POI貌似只能获取word中的文本内容,图片和表格,图片和表格的定位很是个问题,获取样式要一个字符一个字符的分析麻烦且效率低下)方便且简单,但是个人觉得开启Openoffice服务占用系统资源太多。
ps:word转换成html后会有很多冗余的word格式,严重影响了页面的加载,您一定很想把它们给清除掉,留下干净清爽的html代码。那请您参考我的下一篇文章去掉word冗余格式
java正则表达式 http://dangry.iteye.com/blog/858821
2. 下载第三方工具包JODConverter,http://www.artofsolving.com/opensource/jodconverter。
3. 工程中导入JODConverter中的jar包(jodconverter-2.2.2\lib)
* commons-io
* jodconverter
* juh
* jurt
* ridl
* slf4j-api
* slf4j-jdk14
* unoil
* xstream
Java代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/202012/19/aeb69bec34fda9f9b0ee0cb506e5a407.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202011/30/e948c2f150ee98c9ec2c03da96163d32.png)
![](http://dangry.iteye.com/images/spinner.gif)
import java.io.File; import java.net.ConnectException; import com.artofsolving.jodconverter.DocumentConverter; import com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection; import com.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection; import com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter; public class OfficeConverter { public static void main(String[] args) { File inputFile = new File("C:/test/yy.doc"); File outputFile = new File("C:/test/yy.html"); OpenOfficeConnection con = new SocketOpenOfficeConnection(8100); try { con.connect(); } catch (ConnectException e) { System.err.println("文件转换出错,请检查OpenOffice服务是否启动。"); e.printStackTrace(); } DocumentConverter converter = new OpenOfficeDocumentConverter(con); converter.convert(inputFile, outputFile); con.disconnect(); } }
import java.io.File; import java.net.ConnectException; import com.artofsolving.jodconverter.DocumentConverter; import com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection; import com.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection; import com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter; public class OfficeConverter { public static void main(String[] args) { File inputFile = new File("C:/test/yy.doc"); File outputFile = new File("C:/test/yy.html"); OpenOfficeConnection con = new SocketOpenOfficeConnection(8100); try { con.connect(); } catch (ConnectException e) { System.err.println("文件转换出错,请检查OpenOffice服务是否启动。"); e.printStackTrace(); } DocumentConverter converter = new OpenOfficeDocumentConverter(con); converter.convert(inputFile, outputFile); con.disconnect(); } }
4. 测试之前先启动OpenOffice服务
C:\Program Files\OpenOffice.org 3\program>soffice -headless -accept="socket,port=8100;urp;"
总结:使用OpenOffice作为转换引擎把word文档转换成html,比起使用微软的com组件有跨平台的优势,而且比Apache poi(POI貌似只能获取word中的文本内容,图片和表格,图片和表格的定位很是个问题,获取样式要一个字符一个字符的分析麻烦且效率低下)方便且简单,但是个人觉得开启Openoffice服务占用系统资源太多。
ps:word转换成html后会有很多冗余的word格式,严重影响了页面的加载,您一定很想把它们给清除掉,留下干净清爽的html代码。那请您参考我的下一篇文章去掉word冗余格式
java正则表达式 http://dangry.iteye.com/blog/858821
相关文章推荐
- java OpenOffice把word转html(Convert word to html)
- java OpenOffice把word转html(Convert word to html
- Convert HTML Page To a PDF Using Open Source Tool [ Linux / OS X / Windows ]
- java创建word打开后弹出无法打开office open xml文件....因为内容有错误提示
- Java跨平台将word转为pdf(结合Jodconverter 和OpenOffice.org)
- JAVA OpenOffice+jodconverter转换WORD为PDF
- Preview Word files (docx) in HTML using ASP.NET, OpenXML and LINQ to XML
- How to convert docx/odt to pdf/html with Java?
- Preview Word files (docx) in HTML using ASP.NET, OpenXML and LINQ to XML
- Java中Office(word/ppt/excel)转换成HTML实现
- Java--office(word......)在线预览(openoffice+swfTools+FlexPaper)
- How to open MS word document from the SharePoint 2010 using Microsoft.Office.Interop.dll
- How to convert Word table into Excel using OpenXML
- Convert word or html to wiki syntax
- Convert word or html to wiki syntax
- Java跨平台将word转为pdf(结合Jodconverter 和OpenOffice.org)
- Word转Html ( Microsoft.Office.Interop.Word )
- Length of Last Word leetocde java
- How to convert web pages and word doc to PDF files?
- Java使用Jacob转换Word为HTML