首页 > 编程语言 >JAVA使用OpenOffice文件转换

JAVA使用OpenOffice文件转换

时间:2023-04-13 12:01:52浏览次数:37  
标签:转换 jar connection OpenOffice new 2.2 jodconverter JAVA

下载jar包

maven中央仓库包不支持docx文件 所以不建议使用。jar包是为了方便链接

下载链接:https://nchc.dl.sourceforge.net/project/jodconverter/JODConverter/2.2.2/jodconverter-2.2.2.zip 

解压后找到:jodconverter-2.2.2\jodconverter-2.2.2\lib\jodconverter-2.2.2.jar

放到本地maven仓库

mvn install:install-file -Dfile=jodconverter-2.2.2.jar -DgroupId=com.artofsolving -DartifactId=jodconverter -Dversion=2.2.2 -Dpackaging=jar
<dependency>
  <groupId>com.artofsolving</groupId>
  <artifactId>jodconverter</artifactId>
  <version>2.2.2</version>
</dependency>

链接代码

       // 文件输入输出流
         FileInputStream in = new FileInputStream(inputFile);//new File("D:\\file\\c.doxc")
        FileOutputStream out = new FileOutputStream(outputFile);//new File("D:\\file\\a.pdf")
        // 创建连接
            OpenOfficeConnection connection = new SocketOpenOfficeConnection(openOfficeHost, openOfficePost);
            connection.connect();
            // 创建转换器
            DocumentConverter converter = new StreamOpenOfficeDocumentConverter(connection);
            // 待转换文件名称及扩展名称
            String officeName = inputFile.getName();
            String officeExt = officeName.substring(officeName.lastIndexOf(".") + 1);
            // 文件格式
            DefaultDocumentFormatRegistry factory = new DefaultDocumentFormatRegistry();
            // 待转换文件 转换文件格式对象
            DocumentFormat officeFormat = factory.getFormatByFileExtension(officeExt);//如果使用的2.2.1的jar包,要转换的word后缀是docx!这里会返回null
            DocumentFormat pdfFormat = factory.getFormatByFileExtension("pdf");
       converter.convert(in, officeFormat, out, pdfFormat);//word转换PDF
      //断开连接
      connection.disconnect();

翻译

搜索

复制

<iframe height="240" width="320"></iframe>

标签:转换,jar,connection,OpenOffice,new,2.2,jodconverter,JAVA
From: https://www.cnblogs.com/9080dlb/p/17314167.html

相关文章

  • 4、Web前端学习规划:JavaScript - 学习规划系列文章
          JavaScript作为Web前端里的第3重要的语言,笔者认为该重点进行学习。因为JavaScript衍生出来的框架和类库有不少,而且很强大。所以JavaScript的学习要抓好重点,在基本的语法及应用上学习相关的框架和类库,更好的为Web前端的开发应用做好准备。 1、简介;JavaSc......
  • Java 深拷贝浅拷贝
    Arrays.copyOf()方法在底层是调用了System.arraycopy() 对于基本数据类型来说System.arraycopy()方法是深拷贝,对于引用数据类型来说System.arraycopy()方法是浅拷贝。总结:拷贝方式数值类型引用类型推荐使用for循环深拷贝浅拷贝 copyOf深拷贝浅拷贝推荐......
  • 用java做一个并发10W的网站,需要用到的技术有这些!
        你需要使用以下技术和工具:JavaWeb框架:选择一个性能高、可扩展性好、易于使用和维护的JavaWeb框架,如SpringMVC、Struts2、PlayFramework等。数据库:使用高性能的数据库系统,如MySQL、PostgreSQL、Oracle等。使用数据库连接池可以提高性能。缓存:使用缓存可......
  • Java基础语法
    Java基础语法注释、标识符、关键字注释注释并不会被执行,是给我们程序员看的书写注释是一个非常好的习惯Java注释的分类:单行注释://多行注释:/***/文档注释标识符标识符的作用用来表示变量名、类名、方法名、数组名和文件名等是一个有效的字......
  • Java流程控制
    Java流程控制用户交互ScannerScanner对象Java提供了一个工具类,可以通过Scanner类来获取用户的输入基本语法Scanners=newScanner(System.in)通过Scanner类的next()与nextLine()方法获取输入的字符串,再读取钱我们一般需要使用hasNext()和hasNextLine()判断是否有还......
  • 基于Java+uniapp小程序实现餐厅校园订餐平台
    基于Java+Vue+uniapp微信小程序实现餐厅校园订餐平台博主介绍:5年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域一、前言介绍:传统的校园订餐管理方式都在使用手工记录的方式进行数据的登记,这种方式耗时,而且对于数据量比较大的情况想......
  • 基于Java+Springboot+vue网上商品订单转手系统设计和实现
    基于Java+Springboot+vue网上商品订单转手系统设计和实现一、前言介绍:1.1项目摘要传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装网上商品订单转手系统软件来发挥其高效地信息处理......
  • Javascript对象
    对象对象是一组无序的相关属性和方法的集合,所有事物都是对象,例如字符串,数值,数组,函数对象由属性和方法组成属性:事物的特征,常用名词方法:事物的行为,常用动词创建对象利用对象字面量创建对象varobj={uname:'tom',age:18,sex:'男',......
  • 一个Java web 应用系统的需求文档示例:
    #需求文档##引言本文档旨在描述一个在线商城网站的需求,并给出设计方案。该网站是一个B2C电商平台,旨在提供给用户方便快捷的购物体验。本文档面向的读者包括项目经理、开发人员、测试人员和其他与该系统相关的人员。##功能需求本次需求的功能需求包括:1.用户登录和注......
  • JavaScript 数组字符串转换Json格式
    JavaScript数组字符串转换Json格式//滔Roy2023.04.13functionparseStringToArray(str){//尝试将字符串解析为JSON格式try{constarr=JSON.parse(str);//如果解析成功,则直接返回解析结果if(Array.isArray(arr)){returnarr;}}......