java将pdf转换成word

1、jar包准备

在项目中新增lib目录,并将如下两个文件放入lib目录下

aspose-words-15.8.0-jdk16.jar

aspose-pdf-22.9.jar

2、pom.xml配置

xml 复制代码
		<dependency>
            <groupId>com.aspose</groupId>
            <artifactId>aspose-pdf</artifactId>
            <version>22.9</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/lib/aspose-pdf-22.9.jar</systemPath>
        </dependency>

3 去除水印配置

在项目中的resource文件夹下新增文件名为license.xml的文件

xml 复制代码
<License>
    <Data>
        <Products>
            <Product>Aspose.Total for Java</Product>
            <Product>Aspose.Words for Java</Product>
        </Products>
        <EditionType>Enterprise</EditionType>
        <SubscriptionExpiry>20991231</SubscriptionExpiry>
        <LicenseExpiry>20991231</LicenseExpiry>
        <SerialNumber>8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7</SerialNumber>
    </Data>
    <Signature>
        sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=
    </Signature>
</License>

3、pdf转换城word代码

java 复制代码
import com.aspose.pdf.Document;
import com.aspose.pdf.License;
import com.aspose.pdf.SaveFormat;

import java.io.FileOutputStream;
import java.io.InputStream;

public class PdfToWord {
 public static boolean getLicense() {
        boolean result = false;
        try {
            InputStream is = Page.class.getClassLoader().getResourceAsStream("\\license.xml"); // license.xml应放在..\WebRoot\WEB-INF\classes路径下
            License aposeLic = new License();
            aposeLic.setLicense(is);
            result = true;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return result;
    }

    public static void main(String[] args) {
        getLicense();
        pdf2doc("文件地址");
    }

    //pdf转doc
    public static void pdf2doc(String pdfPath) {
        long old = System.currentTimeMillis();
        try {
            //新建一个word文档
            String wordPath=pdfPath.substring(0,pdfPath.lastIndexOf("."))+".docx";
            FileOutputStream os = new FileOutputStream(wordPath);
            //doc是将要被转化的word文档
            Document doc = new Document(pdfPath);
            //全面支持DOC, DOCX, OOXML, RTF HTML, OpenDocument, PDF, EPUB, XPS, SWF 相互转换
            doc.save(os, SaveFormat.DocX);
            os.close();
            //转化用时
            long now = System.currentTimeMillis();
            System.out.println("Pdf 转 Word 共耗时:" + ((now - old) / 1000.0) + "秒");
        } catch (Exception e) {
            System.out.println("Pdf 转 Word 失败...");
            e.printStackTrace();
        }
    }
}
相关推荐
小猫咪怎么会有坏心思呢3 分钟前
华为OD机考-数字游戏-逻辑分析(JAVA 2025B卷)
java·游戏·华为od
Aesopcmc7 分钟前
idea 启动jar程序并调试
java·intellij-idea·jar
南极Ou35 分钟前
Mybatis逆向工程详解(附源码文件)动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
xml·java·mybatis
Moshow郑锴42 分钟前
IDEA为何一直无法使用超过4g内存
java·ide·intellij-idea
木头左43 分钟前
Docker容器化镜像分层原理及优化策略
java·eureka
李少兄44 分钟前
IntelliJ IDEA代码提示忽略大小写设置详解
java·ide·intellij-idea
白宇横流学长1 小时前
基于SpringBoot实现的课程答疑系统设计与实现【源码+文档】
java·spring boot·后端
积跬步至千里PRO1 小时前
在 Java 中实现一个标准 Service 接口,并通过配置动态选择具体实现类供 Controller 调用
java·简单工厂模式·解耦
chengchong_cc1 小时前
海康对接摄像头
java·vue.js
菜鸟小九2 小时前
Leetcode20 (有效的括号)
java·数据结构·算法