Java将word文件转成pdf文件的操作方法

 更新时间:2023年09月02日 11:35:26   作者:吴名氏.  
这篇文章主要介绍了Java将word文件转成pdf文件的操作方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

说明:使用本方法计算机中必须含有office

一.准备工作

1.准备如图三个文件:

2.将第二个文件复制到C:\Windows\System32,将第三个文件复制到C:\Windows\SysWOW64,

然后将这两个文件复制到jdk,jre里面的bin文件夹

二.开始编译

1.项目导入第一个文件的jar包

2.代码如图所示:

import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import java.io.File;
public class Test {
        static final int wdDoNotSaveChanges = 0;// 不保存待定的更改。
        static final int wdFormatPDF = 17;// PDF 格式
        public static void wordToPdf(String wordpath, String pdfpath) {
            System.out.println("启动Word...");
            long start = System.currentTimeMillis();
            ActiveXComponent app = null;
            try {
                //打开word应用程序
                app = new ActiveXComponent("Word.Application");
                设置应用操作是文档不在明面上显示,只在后台静默处理。
                app.setProperty("Visible", false);
                //获得文档集合,用来操作我们需要处理的文档.
                Dispatch docs = app.getProperty("Documents").toDispatch();
                System.out.println("打开文档..." + wordpath);
                //打开word文档
                Dispatch doc = Dispatch.call(docs,//
                        "Open", //
                        wordpath,// FileName
                        false,// ConfirmConversions
                        true // ReadOnly
                ).toDispatch();
                System.out.println("转换文档到PDF..." + pdfpath);
                File tofile = new File(pdfpath);
                //创建存放pdf的文件夹
                if (tofile.exists()) {
                    tofile.delete();
                }
                //将word另存为pdf
                Dispatch.call(doc,//
                        "SaveAs", //
                        pdfpath, // FileName
                        wdFormatPDF);
                //关闭word文档
                Dispatch.call(doc, "Close", false);
                long end = System.currentTimeMillis();
                System.out.println("转换完成..用时:" + (end - start) + "ms.");
            } catch (Exception e) {
                System.out.println("========Error:文档转换失败:" + e.getMessage());
            } finally {
                if (app != null)
                    app.invoke("Quit", wdDoNotSaveChanges);
            }
        }
        public static void main(String[] args) {
            wordToPdf("C:\\Users\\wukefan\\Desktop\\test.doc","C:\\Users\\wukefan\\Desktop\\test.pdf");
        }
}

三.运行项目

1.运行成功,项目结果如图所示:

2.如图所示桌面,桌面多了个pdf文件:

到此这篇关于利用Java将word文件转成pdf文件的文章就介绍到这了,更多相关java word转pdf文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java实现高效PDF文件传输技巧

    Java实现高效PDF文件传输技巧

    你是否曾为PDF文件传输的低效率而苦恼?现在,有了这份Java实现高效PDF文件传输技巧指南,你将能够轻松解决这个问题,我们将分享一些实用的技巧和最佳实践,帮助你优化文件传输过程,不要错过这个提高工作效率的机会,快来阅读这份指南吧!
    2024-03-03
  • 利用JAVA反射,读取数据库表名,自动生成对应实体类的操作

    利用JAVA反射,读取数据库表名,自动生成对应实体类的操作

    这篇文章主要介绍了利用JAVA反射,读取数据库表名,自动生成对应实体类的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • Java String 和StringBuffer的详解及区别

    Java String 和StringBuffer的详解及区别

    这篇文章主要介绍了Java String 和StringBuffer的详解及区别的相关资料,需要的朋友可以参考下
    2017-05-05
  • springboot2升级到springboot3过程相关修改记录

    springboot2升级到springboot3过程相关修改记录

    本文详细记录了将Spring Boot 2升级到Spring Boot 3的过程,包括升级JDK到17、修改依赖、配置文件调整以及处理一些特定问题,如Redisson版本升级和Swagger配置,感兴趣的朋友跟随小编一起看看吧
    2024-12-12
  • Mybatis-Plus查询中如何排除标识字段

    Mybatis-Plus查询中如何排除标识字段

    这篇文章主要介绍了Mybatis-Plus查询中排除标识字段的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • Java实现飞机大战游戏 附完整源码

    Java实现飞机大战游戏 附完整源码

    这篇文章主要介绍了Java实现飞机大战游戏,本文给大家分享完整源代码和效果图展示,对java飞机大战游戏实现代码感兴趣的朋友一起看看吧
    2022-05-05
  • 解读.idea文件的使用及说明

    解读.idea文件的使用及说明

    文章介绍了IntelliJ IDEA项目中的.idea文件夹及其作用,包括编译配置、工作空间配置、项目标识文件、编码配置、jar包信息以及插件配置等,同时,文章提醒在版本控制时应排除.idea文件夹,以避免版本冲突
    2025-01-01
  • 浅谈Spring @Async异步线程池用法总结

    浅谈Spring @Async异步线程池用法总结

    本篇文章主要介绍了浅谈Spring @Async异步线程池用法总结,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • java对象和json的来回转换知识点总结

    java对象和json的来回转换知识点总结

    在本篇文章里小编给大家分享了一篇关于java对象和json的来回转换知识点总结内容,有兴趣的朋友们可以学习下。
    2021-01-01
  • Spring Boot + Vue 前后端分离项目如何踢掉已登录用户

    Spring Boot + Vue 前后端分离项目如何踢掉已登录用户

    这篇文章主要介绍了Spring Boot + Vue 前后端分离项目如何踢掉已登录用户,需要的朋友可以参考下
    2020-05-05

最新评论