android镊 姩瀹夎 apk,用java写的jodconverter借用openoffice来转换office成pdf的示例代码...
下载安装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的示例代码...相关推荐
- android镊 姩瀹夎 apk,Python瀹夎Selenium3
姒傝堪 2016.10.13锛孲elenium3.0姝e紡鍙戝竷锛屽畼鏂硅鏄庡涓嬶細 The major change in Selenium 3.0 is we're removing the ...
- java socket 重连复用_Java Socket编程基础及深入讲解(示例代码)
Socket是Java网络编程的基础,了解还是有好处的, 这篇文章主要讲解Socket的基础编程.Socket用在哪呢,主要用在进程间,网络间通信.本篇比较长,特别做了个目录: 一.Socket通信基 ...
- java生成pdf表格示例代码
使用itext代码直接生成pdf文件 用到jar包 itextpdf-5.2.1.jar itext-asian-5.2.0.jar 优缺点 优点:生成快,代码直接能用 缺点:代码要写 ...
- java获取网络ip地址_Java获取电脑真实IP地址的示例代码
/** * @author yins * @date 2018年8月12日下午9:53:58 */ import java.net.Inet4Address; import java.net.Inet ...
- java 批量写入文件_Java批量写入文件和下载图片的示例代码
很久没有在WhitMe上写日记了,因为觉着在App上写私密日记的话肯定是不安全的,但是想把日记存下来.,然后看到有导出日记的功能,就把日记导出了(还好可以直接导出,不然就麻烦点).导出的是一个html ...
- Java Web--HTML、CSS、JavaScript详细学习笔记(内含丰富示例代码)
** Java Web–HTML.CSS.JavaScript学习笔记 ** HTML(Hyper Text Markup Language超文本标记语言):控制的是页面的内容,是由标签组成的语言,能 ...
- java多线程下载源码_Java多线程文件分片下载实现的示例代码
多线程下载介绍 多线程下载技术是很常见的一种下载方案,这种方式充分利用了多线程的优势,在同一时间段内通过多个线程发起下载请求,将需要下载的数据分割成多个部分,每一个线程只负责下载其中一个部分,然后将下 ...
- java批量下载图片_Java批量写入文件和下载图片的示例代码
很久没有在WhitMe上写日记了,因为觉着在App上写私密日记的话肯定是不安全的,但是想把日记存下来.,然后看到有导出日记的功能,就把日记导出了(还好可以直接导出,不然就麻烦点).导出的是一个html ...
- 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位) ...
最新文章
- @程序员,别再自己闷头学了
- 四面阿里看看你都会吗
- 嘿 Siri,有没有「三天速成深度学习」的课程?
- 收集经常使用的.net开源项目
- Swoole找不到telnet命令
- 【转】Oracle 执行动态语句
- java ee 代码,JavaEE用户登录注册代码(免费)
- poj 1180 斜率优化dp
- 网易逆水寒服务器型号,从服务器爆满到无人问津的经典游戏
- 轻量化html编辑器,web端实现富文本编辑器
- SpringBoot中配置多环境的配置文件
- vst和vst3插件_用于家庭录音的经典VST插件
- flash player 10 beta已经放出
- JAVA 分布式 - 分布式介绍
- 微信公众号如何开通支付功能?
- libcef-编译运行模式-MTD/MT-MDD/MD
- 修路【NOIP2016提高组模拟】
- 浮窗---创建Activity浮窗(可拖动)
- RTL8188 Linux驱动移植
- PLC常用标志位信号时序编程注意事项
热门文章
- c++语言表白超炫图形_青少年编程学习之C语言怎么学?现在知道,将来不亏!...
- 计算机实训课教案模板,CorelDRAW实训课教案(7周)
- BUUCTF(pwn)jarvisoj_level3_x64
- java ssm常用注解_SSM框架中常用的注解
- Python实现网页截图
- 计算机服务业纳税,2018年全国软件和信息技术服务业增值税、消费税、营业税等各税收收入情况(附各地区)...
- 西电与中科大计算机专业哪个好,中国最好的5所“科技大学”,中科大第二,你的母校排第几?...
- python pass 占位符 占位语句
- opencv python matplotlib.pyplot.hist() 如何绘制灰度直方图,如何根据灰度直方图确定最优二值化值
- python 如何将字符串数字列表转换成数字列表,如何将数字列表转换成字符串数字列表?map(eval,list(str))