office办公文档doc、docx、xls、xlsx、ppt、pptx在线预览解决方案三,实现预览

编程入门 行业动态 更新时间:2024-10-10 09:24:39

office办公文档doc、docx、xls、xlsx、ppt、pptx<a href=https://www.elefans.com/category/jswz/34/1770935.html style=在线预览解决方案三,实现预览"/>

office办公文档doc、docx、xls、xlsx、ppt、pptx在线预览解决方案三,实现预览

Java调用openOffice处理文档实现预览

maven依赖

<dependency><groupId>com.artofsolving</groupId><artifactId>jodconverter</artifactId><version>2.2.2</version></dependency>

注意:maven仓库只有2.2.1版本,改版本不能转换docx xlsx pptx格式,网上有解决方案重写xx方法,不一定奏效,直接使用2.2.2,其他依赖包已经准备好,

java主要代码段 其他一放到压缩包

package org.yxt.utils;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.StreamOpenOfficeDocumentConverter;
import lombok.extern.slf4j.Slf4j;import java.io.File;
import java.ConnectException;/*** openOffice工具** @author Yang douya* @date 2020/10/14 17:35*/
@Slf4j
public class OpenOfficeUtil {/*** 将Office文档转换为PDF. 运行该函数需要用到OpenOffice, OpenOffice下载地址为>* 方法示例:* String sourcePath = "F:\\office\\source.doc";* String destFile = "F:\\office\\dest.pdf";** @param sourceFile 源文件 绝对路径 包括.doc, .docx, .xls, .xlsx, .ppt, .pptx* @param destFile   目标文件 绝对路径* @return 则表示操作成功 0-转换异常 2-文件不存在*/public static int office2Pdf(String sourceFile, String destFile) {int resCode = 1;OpenOfficeConnection connection = null;try {File inputFile = new File(sourceFile);if (!inputFile.exists()) {// 找不到源文件, 则返回 2resCode = 2;} else {// 如果目标路径不存在, 则新建该路径File outputFile = new File(destFile);if (!outputFile.getParentFile().exists()) {outputFile.getParentFile().mkdirs();}// 执行连接openOffice服务connection = new SocketOpenOfficeConnection("127.0.0.1", 8100);connection.connect();DocumentConverter converter = new StreamOpenOfficeDocumentConverter(connection);converter.convert(inputFile, outputFile);connection.disconnect();}} catch (ConnectException e) {// 转换异常resCode = 0;log.error("openOffice service ConnectException {}", e);} finally {try {if (null != connection) {connection.disconnect();// 彻底释放连接connection = null;}} catch (Exception e) {}}return resCode;}
}

项目目录结构

该项目设计为只为预览服务器,其他业务不管,所以预览只需要提供可访问的office文件的URL即可。但是为了防止其他人员能直接拿到office文件,对office文件的URL进行过DES加密操作。


执行预览

工程代码: 点击下载
jodconverter-2.2.2-所有依赖jar: 点击下载

工程代码按照需求自行拓展

不想搭建系统也可以,直接将连接转发到我的应用中实现预览也可以,留言即可

移动到该系列其他文章
office办公文档doc、docx、xls、xlsx、ppt、pptx在线预览解决方案一,背景==>
office办公文档doc、docx、xls、xlsx、ppt、pptx在线预览解决方案二,openOffice详细安装==>
office办公文档doc、docx、xls、xlsx、ppt、pptx在线预览解决方案三,实现预览==>

更多推荐

office办公文档doc、docx、xls、xlsx、ppt、pptx在线预览解决方案三,实现预览

本文发布于:2024-02-13 07:36:03,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1757578.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:在线   解决方案   文档   docx   doc

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!