通过openOffice将office文件转成pdf
作者:龙谷情Sinoam 发布时间:2021-12-29 21:35:32
标签:openOffice,office,pdf
下载安装openoffice,下载地址:http://www.openoffice.org/download/我安装的目录:
输入cmd回车
在命令窗口输入
soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" –nofirststartwizard
此时服务就开启了将以下代码放到工具类里面,直接调用即可
import com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection;
import com.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection;
import com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter;
...
...
public File office2Pdf(String srcPath, String pdfPath) throws Exception {
// 源文件目录
File inputFile = new File(srcPath);
if (!inputFile.exists()) {
throw new Exception("程序出现问题,文件不存在");
}
// 输出文件目录
File outputFile = new File(pdfPath);
if (!outputFile.exists()) {
outputFile.createNewFile();
}
// 调用openoffice服务线程
String command = openOfficeCommand;
Process process = Runtime.getRuntime().exec(command);
// 连接openoffice服务
OpenOfficeConnection connection = new SocketOpenOfficeConnection(openOfficeUrl, openOfficePort);
connection.connect();
// 转换word到pdf
DocumentConverter converter = new OpenOfficeDocumentConverter(connection);
converter.convert(inputFile, outputFile);
// 关闭连接
connection.disconnect();
// 关闭进程
process.destroy();
return outputFile;
}
...
来源:https://www.cnblogs.com/lgqrlchinese/p/13083551.html


猜你喜欢
- 前言我们在日常开发中,经常会用到一个系统需要链接多个数据库来实现业务的需求,比如多个系统之间数据调用、两个数据之间同步等等。今天给大家分享使
- 在学习使用Scroller之前,需要明白scrollTo()、scrollBy()方法。一、View的scrollTo()、scrollBy
- 代理模式也是一种非常常见的设计模式。了解Spring框架的都知道,Spring AOP 使用的就是 * 模式。今天就来系统的重温一遍代理模
- 1、Java版package com.lyz.utils.common; import java.io.UnsupportedEncodin
- 基于 springboot+vue 的测试平台(练手项目)开发继续更新。在接口编辑页中点击发送接口请求,除了显示响应体外,还可以显示响应头等
- 本文实例讲述了java线程同步操作。分享给大家供大家参考,具体如下:java线程同步public class Hello { p
- 一.使用场景一次请求需要往数据库插入多条数据时,可以节省大量时间,mysql操作在连接和断开时的开销超过本次操作总开销的40%。二.实现方法
- 1、conditional注解介绍含义: 基于条件的注解作用: 根据是否满足某一个特定条件来决定是否创建某个特定的bean意义: Sprin
- 首先给大家来讲一个我们遇到的一个奇怪的问题:1.我的一个springboot项目,用mvn install打包成jar,换一台有jdk的机器
- 本文实例展示C#实现过滤html标签,汉字间空格,制表符,并保留a标签的方法。分享给大家供大家参考之用。具体方法如下:可以在公共类如Comm
- SpringBoot多线程进行异步请求的处理近期在协会博客园中,有人发布了博客,系统进行查重的时候由于机器最低配置进行大量计算时需要十秒左右
- 最近把以前制作的截图程序重新写了一下动了一个大手术 高质量仿照的TX的截图程序先看几个效果图拖动过程中显示当前鼠标下一小块的图像信息 尺寸、
- RestTemplate第一次请求响应速度较慢问题使用RestTemplate请求微信的接口发现第一次请求需要8秒左右的时间,查阅了JDK资
- activity_main.xml在res/layout文件中,放置一个TextView控件用于显示购物商城界面的标题,放置一个ListVi
- 简介#要说Java中什么异常最容易出现,我想NullPointerException一定当仁不让,为了解决这种null值判断问题,Java8
- 本文给大家介绍的是监听Fragment的触摸事件实现。如果大家有更好的机制,可以留言交流,下面来看看详细的介绍:大家都知道,我们的activ
- 本文实例总结了Android开发中Toast显示消息的方法。分享给大家供大家参考,具体如下:Android中提供一种简单的Toast消息提示
- 前几天刚好有需求要把emoji对应的Unicode编码转换成文字,比如1f601对应的这个笑脸😁,但没有找到C#的把1f601转换成文字的方
- 目录一、String的用法1.构造方法2.求字符串长度和某一位置字符3.提取子串4.字符串比较5.字符串链接6.字符串中单个字符查找7.大小
- 本文介绍了详解Android中PopupWindow在7.0后适配的解决,分享给大家,具体如下:这里主要记录一次踩坑的经历。需求:如上图左侧