下载安装java sdk7安装完成即可.不用设置环境

安装openoffice到d:/program files/open....目录中

创建目录

g:/sys/qidizi/desktop/java/test

下面的相对路径都是针对test目录来说的;

在./src/com/qidizi/office2pdf/office2pdf.java中输入以下代码

package com.qidizi.office2pdf;

import java.io.File;

import org.artofsolving.jodconverter.OfficeDocumentConverter;

import org.artofsolving.jodconverter.office.DefaultOfficeManagerConfiguration;

import org.artofsolving.jodconverter.office.OfficeManager;

public class office2pdf {

private static  OfficeManager officeManager;

private static String OPEN_OFFICE_HOME = "D:/Program Files/OpenOffice.org 3/";

private static int OPEN_OFFICE_PORT[] = {8100};

public static void main(String[] args) throws java.io.IOException {

System.out.println("\n\n\n");

if (args.length

System.out.println("输入参数错误,必须指定至少2个参数.\n  office2pdf \"office路径\" \"pdf保存路径\" -env; \n -env 显示当前java运行环境;\n 目前你输入的参数个数是" + args.length);

return;

}

if ( (args.length > 2) && args[2].equalsIgnoreCase("-env")) {//查看java运行环境参数

System.getProperties().storeToXML(System.out, "java 运行环境", "UTF-8");//输出内容是utf8,所以,本java源代码也必须是utf8来保存

System.out.println("\n\n\n");

}

String inputFile = args[0];

String pdfFile = args[1];

if (inputFile.isEmpty()) {

System.out.println("待转换office路径不允许留空");

return;

}

if (!pdfFile.toLowerCase().endsWith(".pdf")) {

System.out.println("输出pdf路径必须以.pdf结尾");

return;

}

System.out.println("进行文档转换转换:" + inputFile + " --> " + pdfFile);

long startTime = System.currentTimeMillis();

startService();

OfficeDocumentConverter converter = new OfficeDocumentConverter(officeManager);

converter.convert(new File(inputFile),new File(pdfFile));

System.out.println("转换完成.耗时" +( (System.currentTimeMillis() - startTime) / 60.0)+ "秒");

stopService();

System.out.println("运行结束");

}

public static void stopService(){

System.out.println("关闭office转换服务....");

if (officeManager != null) {

officeManager.stop();

}

System.out.println("关闭office转换成功!");

}

public static void startService(){

DefaultOfficeManagerConfiguration configuration = new DefaultOfficeManagerConfiguration();

try {

System.out.println("准备启动安装在" + OPEN_OFFICE_HOME + "目录下的openoffice服务....");

configuration.setOfficeHome(OPEN_OFFICE_HOME);//设置OpenOffice.org安装目录

configuration.setPortNumbers(OPEN_OFFICE_PORT); //设置转换端口,默认为8100

configuration.setTaskExecutionTimeout(1000 * 60 * 5L);//设置任务执行超时为5分钟

configuration.setTaskQueueTimeout(1000 * 60 * 60 * 24L);//设置任务队列超时为24小时

officeManager = configuration.buildOfficeManager();

officeManager.start();    //启动服务

System.out.println("office转换服务启动成功!");

} catch (Exception ce) {

System.out.println("office转换服务启动失败!详细信息:" + ce);

}

}

}

下载jodconverter包解压类包jar到./lib中,共有8个jar

建立class目录./bin

打开cmd.exe运行下面命令

G:\sys\qidizi\desktop\java\test>cd "G:\sys\qidizi\desktop\java\test\src\com\qidizi\office2pdf"

G:\sys\qidizi\desktop\java\test\src\com\qidizi\office2pdf>D:\Progra~1\Java\jdk1.7.0_09\bin\javac.exe  -encoding UTF-8 -classpath "G:\sys\qidizi\desktop\java\test\bin;G:\sys\qidizi\desktop\java\test\lib\commons-io-1.4.jar;G:\sys\qidizi\desktop\java\test\lib\juh-3.2.1.jar;G:\sys\qidizi\desktop\java\test\lib\jurt-3.2.1.jar;G:\sys\qidizi\desktop\java\test\lib\ridl-3.2.1.jar;G:\sys\qidizi\desktop\java\test\lib\unoil-3.2.1.jar;G:\sys\qidizi\desktop\java\test\lib\commons-cli-1.1.jar;G:\sys\qidizi\desktop\java\test\lib\json-20090211.jar;G:\sys\qidizi\desktop\java\test\lib\jodconverter-core-3.0-beta-4.jar" -d "G:/sys/qidizi/desktop/java/test/bin/" -Werror -deprecation -verbose  office2pdf.java

[语法分析开始时间 RegularFileObject[office2pdf.java]]

[语法分析已完成, 用时 20 毫秒]

[源文件的搜索路径: G:\sys\qidizi\desktop\java\test\bin,G:\sys\qidizi\desktop\java\test\lib\commons-io-1.4.jar,G:\sys\qidizi\desktop\java\test\lib\juh-3.2.1.jar,G:\sys\qidizi\desktop\java\test\lib\ridl.jar,G:\sys\qidizi\desktop\java\test\lib\jurt.jar,G:\sys\qidizi\desktop\java\test\lib\..\..\lib,G:\sys\qidizi\desktop\java\test\lib\jurt-3.2.1.jar,G:\sys\qidizi\desktop\java\test\lib\unoloader.jar,G:\sys\qidizi\desktop\java\test\lib\ridl-3.2.1.jar,G:\sys\qidizi\desktop\java\test\lib\unoil-3.2.1.jar,G:\sys\qidizi\desktop\java\test\lib\commons-cli-1.1.jar,G:\sys\qidizi\desktop\java\test\lib\json-20090211.jar,G:\sys\qidizi\desktop\java\test\lib\jodconverter-core-3.0-beta-4.jar,G:\sys\qidizi\desktop\java\test\lib\sigar-1.6.5.132.jar]

[类文件的搜索路径: D:\Progra~1\Java\jdk1.7.0_09\jre\lib\resources.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\rt.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\sunrsasign.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\jsse.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\jce.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\charsets.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\jfr.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\classes,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\ext\access-bridge.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\ext\dnsns.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\ext\jaccess.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\ext\localedata.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\ext\sunec.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\ext\sunjce_provider.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\ext\sunmscapi.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\ext\sunpkcs11.jar,D:\Progra~1\Java\jdk1.7.0_09\jre\lib\ext\zipfs.jar,G:\sys\qidizi\desktop\java\test\bin,G:\sys\qidizi\desktop\java\test\lib\commons-io-1.4.jar,G:\sys\qidizi\desktop\java\test\lib\juh-3.2.1.jar,G:\sys\qidizi\desktop\java\test\lib\ridl.jar,G:\sys\qidizi\desktop\java\test\lib\jurt.jar,G:\sys\qidizi\desktop\java\test\lib\..\..\lib,G:\sys\qidizi\desktop\java\test\lib\jurt-3.2.1.jar,G:\sys\qidizi\desktop\java\test\lib\unoloader.jar,G:\sys\qidizi\desktop\java\test\lib\ridl-3.2.1.jar,G:\sys\qidizi\desktop\java\test\lib\unoil-3.2.1.jar,G:\sys\qidizi\desktop\java\test\lib\commons-cli-1.1.jar,G:\sys\qidizi\desktop\java\test\lib\json-20090211.jar,G:\sys\qidizi\desktop\java\test\lib\jodconverter-core-3.0-beta-4.jar,G:\sys\qidizi\desktop\java\test\lib\sigar-1.6.5.132.jar]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/io/File.class)]]

[正在加载ZipFileIndexFileObject[G:\sys\qidizi\desktop\java\test\lib\jodconverter-core-3.0-beta-4.jar(org/artofsolving/jodconverter/OfficeDocumentConverter.class)]]

[正在加载ZipFileIndexFileObject[G:\sys\qidizi\desktop\java\test\lib\jodconverter-core-3.0-beta-4.jar(org/artofsolving/jodconverter/office/DefaultOfficeManagerConfiguration.class)]]

[正在加载ZipFileIndexFileObject[G:\sys\qidizi\desktop\java\test\lib\jodconverter-core-3.0-beta-4.jar(org/artofsolving/jodconverter/office/OfficeManager.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/Object.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/String.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/io/IOException.class)]]

[正在检查com.qidizi.office2pdf.office2pdf]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/AutoCloseable.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/Exception.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/Throwable.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/System.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/io/PrintStream.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/io/FilterOutputStream.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/io/OutputStream.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/util/Properties.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/util/Hashtable.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/util/Dictionary.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/net/URI.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/Error.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/RuntimeException.class)]]

[正在加载ZipFileIndexFileObject[G:\sys\qidizi\desktop\java\test\lib\jodconverter-core-3.0-beta-4.jar(org/artofsolving/jodconverter/office/OfficeException.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/NullPointerException.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/IllegalArgumentException.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/IllegalStateException.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/StringBuilder.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/CharSequence.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/io/Serializable.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/Comparable.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/AbstractStringBuilder.class)]]

[正在加载ZipFileIndexFileObject[D:\Progra~1\Java\jdk1.7.0_09\lib\ct.sym(META-INF/sym/rt.jar/java/lang/StringBuffer.class)]]

[已写入RegularFileObject[G:\sys\qidizi\desktop\java\test\bin\com\qidizi\office2pdf\office2pdf.class]]

[共 320 毫秒]

G:\sys\qidizi\desktop\java\test\src\com\qidizi\office2pdf>cd "G:\sys\qidizi\desktop\java\test"

G:\sys\qidizi\desktop\java\test>D:\Progra~1\Java\jre7\bin\java.exe  -Dfile.encoding=UTF-8 -classpath "G:\sys\qidizi\desktop\java\test\bin;G:\sys\qidizi\desktop\java\test\lib\commons-io-1.4.jar;G:\sys\qidizi\desktop\java\test\lib\juh-3.2.1.jar;G:\sys\qidizi\desktop\java\test\lib\jurt-3.2.1.jar;G:\sys\qidizi\desktop\java\test\lib\ridl-3.2.1.jar;G:\sys\qidizi\desktop\java\test\lib\unoil-3.2.1.jar;G:\sys\qidizi\desktop\java\test\lib\commons-cli-1.1.jar;G:\sys\qidizi\desktop\java\test\lib\json-20090211.jar;G:\sys\qidizi\desktop\java\test\lib\jodconverter-core-3.0-beta-4.jar" com.qidizi.office2pdf.office2pdf "G:/sys/qidizi/desktop/1.doc" "G:/sys/qidizi/desktop/1.pdf"

杩涜鏂囨。杞崲杞崲:G:/sys/qidizi/desktop/1.doc --> G:/sys/qidizi/desktop/1.pdf

鍑嗗鍚姩瀹夎鍦―:/Program Files/OpenOffice.org 3/鐩綍涓嬬殑openoffice鏈嶅姟....

office杞崲鏈嶅姟鍚姩鎴愬姛!

鍏抽棴office杞崲鏈嶅姟....

鍏抽棴office杞崲鎴愬姛!

杩愯缁撴潫

因为中文输出的是utf-8.所以,会出现乱码.

运行后即可看到桌面有一个pdf文件

android镊 姩瀹夎 apk,用java写的jodconverter借用openoffice来转换office成pdf的示例代码...相关推荐

  1. android镊 姩瀹夎 apk,Python瀹夎Selenium3

    姒傝堪 2016.10.13锛孲elenium3.0姝e紡鍙戝竷锛屽畼鏂硅鏄庡涓嬶細 The major change in Selenium 3.0 is we're removing the ...

  2. java socket 重连复用_Java Socket编程基础及深入讲解(示例代码)

    Socket是Java网络编程的基础,了解还是有好处的, 这篇文章主要讲解Socket的基础编程.Socket用在哪呢,主要用在进程间,网络间通信.本篇比较长,特别做了个目录: 一.Socket通信基 ...

  3. java生成pdf表格示例代码

    使用itext代码直接生成pdf文件 用到jar包       itextpdf-5.2.1.jar   itext-asian-5.2.0.jar 优缺点 优点:生成快,代码直接能用 缺点:代码要写 ...

  4. java获取网络ip地址_Java获取电脑真实IP地址的示例代码

    /** * @author yins * @date 2018年8月12日下午9:53:58 */ import java.net.Inet4Address; import java.net.Inet ...

  5. java 批量写入文件_Java批量写入文件和下载图片的示例代码

    很久没有在WhitMe上写日记了,因为觉着在App上写私密日记的话肯定是不安全的,但是想把日记存下来.,然后看到有导出日记的功能,就把日记导出了(还好可以直接导出,不然就麻烦点).导出的是一个html ...

  6. Java Web--HTML、CSS、JavaScript详细学习笔记(内含丰富示例代码)

    ** Java Web–HTML.CSS.JavaScript学习笔记 ** HTML(Hyper Text Markup Language超文本标记语言):控制的是页面的内容,是由标签组成的语言,能 ...

  7. java多线程下载源码_Java多线程文件分片下载实现的示例代码

    多线程下载介绍 多线程下载技术是很常见的一种下载方案,这种方式充分利用了多线程的优势,在同一时间段内通过多个线程发起下载请求,将需要下载的数据分割成多个部分,每一个线程只负责下载其中一个部分,然后将下 ...

  8. java批量下载图片_Java批量写入文件和下载图片的示例代码

    很久没有在WhitMe上写日记了,因为觉着在App上写私密日记的话肯定是不安全的,但是想把日记存下来.,然后看到有导出日记的功能,就把日记导出了(还好可以直接导出,不然就麻烦点).导出的是一个html ...

  9. android是java_为什么大家都用JAVA写android程序

    您好, 1.原始类型: v void 只能用于返回值类型 Z boolean B byte S short C char I int J long(64位) F float D double(64位) ...

最新文章

  1. @程序员,别再自己闷头学了
  2. 四面阿里看看你都会吗
  3. 嘿 Siri,有没有「三天速成深度学习」的课程?
  4. 收集经常使用的.net开源项目
  5. Swoole找不到telnet命令
  6. 【转】Oracle 执行动态语句
  7. java ee 代码,JavaEE用户登录注册代码(免费)
  8. poj 1180 斜率优化dp
  9. 网易逆水寒服务器型号,从服务器爆满到无人问津的经典游戏
  10. 轻量化html编辑器,web端实现富文本编辑器
  11. SpringBoot中配置多环境的配置文件
  12. vst和vst3插件_用于家庭录音的经典VST插件
  13. flash player 10 beta已经放出
  14. JAVA 分布式 - 分布式介绍
  15. 微信公众号如何开通支付功能?
  16. libcef-编译运行模式-MTD/MT-MDD/MD
  17. 修路【NOIP2016提高组模拟】
  18. 浮窗---创建Activity浮窗(可拖动)
  19. RTL8188 Linux驱动移植
  20. PLC常用标志位信号时序编程注意事项

热门文章

  1. c++语言表白超炫图形_青少年编程学习之C语言怎么学?现在知道,将来不亏!...
  2. 计算机实训课教案模板,CorelDRAW实训课教案(7周)
  3. BUUCTF(pwn)jarvisoj_level3_x64
  4. java ssm常用注解_SSM框架中常用的注解
  5. Python实现网页截图
  6. 计算机服务业纳税,2018年全国软件和信息技术服务业增值税、消费税、营业税等各税收收入情况(附各地区)...
  7. 西电与中科大计算机专业哪个好,中国最好的5所“科技大学”,中科大第二,你的母校排第几?...
  8. python pass 占位符 占位语句
  9. opencv python matplotlib.pyplot.hist() 如何绘制灰度直方图,如何根据灰度直方图确定最优二值化值
  10. python 如何将字符串数字列表转换成数字列表,如何将数字列表转换成字符串数字列表?map(eval,list(str))