openoffice将图片转换为html,Java利用OpenOffice进行将word,excel转化成html解析到界面(上)...
最近项目中遇到一个新需求,需要将Word和Excel文档解析成为html编码并在前台显示,word中包含图片信息,保留原文档基础样式,博主查找了相关资料后,利用OpenOffice第三方插件,以及自己封装了一些解析方法,功能已经实现,在此分为上下两部分做总结以便后期使用,希望可以帮助到大家,如有更好的建议望留言告知。
1.OpenOffice
1.软件下载
首先,去到官网根据自己的需求下载所需要的版本(我的版本是4.1.4)。
2.软件安装
双击安装包 打开运行程序 这里是安装向导首界面 点击下一步按钮
点击浏览按钮 选择安装目录路径 如图所示
会自动检测系统中的插件 如果需要会自动安装
输入使用的用户 以及选择用户权限 点击下一步按钮
这里勾选通常安装 简单而且点击下一步
是否在桌面上创建一个快捷方式 建议勾选
这是安装完成界面 点击完成关闭安装向导
PS:安装度娘上都有,博主帮你们移植过来,按照步骤即可。
3.启动OpenOffice服务
打开cmd命令窗口,进入OpenOffice安装目录下的program目录,如下图
因为我的OpenOffice安装在D盘所以我先进的D盘,至于怎么在cmd里敲命令行我想大家都懂得,在这里我就不献丑了。
进入program目录后,继续执行(按原句执行不要更改)
soffice -headless -accept=”socket,host=127.0.0.1,port=8100;urp;” -nofirststartwizard
如下图:
执行完成后可打开:任务管理器 进行查看服务是否启动 如下图:
记住每次重启电脑都得重新打开OpenOffice执行上述步骤,如果需要自启动请自行写自启动脚本
4.工具类
OpenOfficeUtils.java
package com.utils;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
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;
/**
* 任意文件转化为html
*
* @author Mr.F
*
*/
public class OpenOfficeUtils {
// 任意文件转html
public static void FileToHtml(String sourceFile, String htmlFile) {
File SourceFile = new File(sourceFile);
File HtmlFile = new File(htmlFile);
/*
* 转换成pdf文件
* 项目执行需要启动OpenOffice服务,在系统命令窗口执行命令。
* cd C:\Program Files (x86)\OpenOffice.org 4\program
* soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard
*/
if(SourceFile.exists()) {
if(!HtmlFile.exists()) {
OpenOfficeConnection connection = new SocketOpenOfficeConnection(8100);
try {
connection.connect();
DocumentConverter converter = new OpenOfficeDocumentConverter(connection);
converter.convert(SourceFile, HtmlFile);
HtmlFile.createNewFile();
connection.disconnect();
System.out.println("第二步:转换为HTML格式 路径" + HtmlFile.getPath());
} catch (java.net.ConnectException e) {
//} catch (Exception e) {
e.printStackTrace();
System.out.println("OpenOffice服务未启动");
try {
throw e;
} catch (ConnectException e1) {
e1.printStackTrace();
}
} catch (com.artofsolving.jodconverter.openoffice.connection.OpenOfficeException e) {
e.printStackTrace();
System.out.println("读取文件失败");
throw e;
} catch (Exception e){
e.printStackTrace();
try {
throw e;
} catch (Exception e1) {
e1.printStackTrace();
}
}
} else {
System.out.println("已转换为HTML,无需再次转换");
}
} else {
System.out.println("要转换的文件不存在");
}
}
public static void main(String[] args) {
FileToHtml("F:\\ceshi.xlsx", "F:\\ceshi1.html");
}
}
PS:OpenOffice会自动识别Office版本,比如doc和docx以及xls和xlsx。
先告诉大家工具下载和使用情况,下篇会结合web工程给大家演示完整的功能,如有问题请留言告知,我们不止会New!
openoffice将图片转换为html,Java利用OpenOffice进行将word,excel转化成html解析到界面(上)...相关推荐
- Java 利用hutool工具实现导出excel并合并单元格
Java 利用hutool工具实现导出excel并合并单元格 controller层调用service,就一个核心方法,没错就下面这个代码就能实现了.前提是项目里面要引用hutool包.把我这个复制到 ...
- 使用Java泛型和反射机制编写Excel文件生成和解析的通用工具类
前几天被派到一个小项目中做临时维护,工作地点不方便且不说,项目代码那叫一个恶心... 代码几乎完全没有注释.这应该是我们天朝大部分程序员的习惯,代码不写注释,给后面维护的同事带来多大麻烦啊! 几百行的 ...
- 利用js-xlsx.js插件实现Excel文件导入并解析Excel数据成json数据格式
<!--本文转载于网络,有太多一样的文章,不知道原作者是哪位了,就不注明出处了.这里记载下来,用于自己的学习借鉴--><!DOCTYPE html><html lang= ...
- java 利用openOffice实现word ppt 等资源转化为pdf文件
网上有很多教程,但是很多坑,比如jobconvert2.2.1无法转pptx等格式的文件 而jobconvert2.2.2可以 但是maven仓库又没有 对于公司开发 这是个问题 毕竟公司的仓库 ...
- java利用栈进行进制转换
栈(Stack)是一种特殊的线性表,其插入和删除操作只允许在线性表的一端进行.通常称允许插入.删除操作的这一端为栈顶(Top),不允许操作的一端称为栈底(Bottom).当表中没有元素时称为空栈. 假 ...
- java利用poi模板导出word文件
注意: doc文件的读取,需要导入poi-scratchpad包: docx文件读取,需要导入poi-ooxml包: 一.引入pom <dependency><groupId> ...
- java利用freemarker动态生成word文档及动态表格
这里写自定义目录标题 目标 准备 实现 处理模板 java实现 验证 目标 根据给定word模板,动态填充指定内容,并输出为新的word文档. 准备 1.模板: 准备一份目标格式的word文档,如:w ...
- Java实现pdf转HTML | WORD | EXCEL | PPT | PNG | TXT 教程
从 Maven 下载 Aspose.PDF 通过将以下配置添加到 pom.xml, 您可以直接从基于Maven的项目 轻松地使用Aspose.PDF for Java . <repository ...
- Java中使用JCOM操作Word/Excel对象
通过使用COM技术,我们用微软Office应用程序能够建立很多应用程序扩展,但是Java开发人员却无法享受它带来的便利--除非他们拥有方便的Java访问COM的途径(Java-to-COM桥).使用J ...
- java doc转为pdf_Java利用openoffice将doc、docx转为pdf实例代码
本文研究的主要是Java编程利用openoffice将doc.docx转为pdf的实现代码,具体如下. 1. 需要用的软件 OpenOffice , JodConverter 2.启动OpenOffi ...
最新文章
- android如何查看分区信息,android如何查看分区信息
- VMware的快照和克隆总结
- 读取Excel还用POI?试试这款开源工具
- 未来的浏览器=操作系统
- JVM上的下一个Java——Scala
- 官网下载mysql实例数据库
- 通过webbrowser实现js与winform的相互调用
- Angular4+AdminLTE+Jeecg 前后端分离框架实战-张代浩-专题视频课程
- 20172318 2018-2019-1 《程序设计与数据结构》第9周学习总结
- 妈妈再也不用担心孩子偷玩手机了!微信升级“青少年模式”
- Oracle修改机器名后导致监听和console无法启动解决方法参考(转的)
- xampp 403 禁止访问 问题解决
- 一种深久的不安 摘自: 《天使路过》 / 乔叶
- oracle中的rownumber,oracle中row_number和rownum的区别和联系(翻译)
- Q版京剧脸谱来喽——小生
- Linux那些事儿之我是U盘(5)外面的世界很精彩
- Web项目经理手册之项目经理需要铭记在心的话
- 英语中的商务电子邮件:5点实用技巧
- 蚂蚁开放平台开发者专场(上海站)欢迎参加!
- Hive(番外):Hive可视化工具IntelliJ IDEA