java开发_模仿百度文库_OpenOffice2PDF_注意事项
在模仿百度文库的操作过程中,有很多朋友反映出来的一些问题,是我想起了写这篇blog。
主要是让大家在做的过程中注意一些东西,否则达不到想要的效果。
第一步:我们先从 java开发_模仿百度文库_OpenOffice2PDF_源码下载 这篇blog中下载到源码。
或者直接从这里下载源码:http://files.cnblogs.com/hongten/Office2PDF.rar
第二步:我们下载好了源码,进行解压文件。然后启动你的Eclipse。
第三步:把解压好的源码导入(Import)你的Eclipse的工作目录(workspace)。
或者,你在Eclipse中重新建一个项目,把相应的文件拷贝到你所建的工程目录(比如:src下面的文件,拷贝到src目录下;lib下面的文件,拷贝到lib目录下;注意他们的路径就可以了。)

第四步:设置你项目的build path,把lib下面的jar包引入进来。设置jre的版本为1.7的。(我测试过了,jre1.6的版本不行的哦!)

第五步:运行程序,控制台输出结果
四月 19, 2014 6:47:07 下午 org.artofsolving.jodconverter.office.ProcessPoolOfficeManager <init>
INFO: ProcessManager implementation is PureJavaProcessManager
四月 19, 2014 6:47:07 下午 org.artofsolving.jodconverter.office.OfficeProcess start
INFO: starting process with acceptString 'socket,host=127.0.0.1,port=2002,tcpNoDelay=1' and profileDir 'C:\Users\ADMINI~1\AppData\Local\Temp\.jodconverter_socket_host-127.0.0.1_port-2002'
四月 19, 2014 6:47:07 下午 org.artofsolving.jodconverter.office.OfficeProcess start
INFO: started process
四月 19, 2014 6:47:14 下午 org.artofsolving.jodconverter.office.OfficeConnection connect
INFO: connected: 'socket,host=127.0.0.1,port=2002,tcpNoDelay=1'
文件:e:/test.docx
转换为
目标文件:e:\test_1397904427299.pdf
成功!
四月 19, 2014 6:47:23 下午 org.artofsolving.jodconverter.office.ProcessPoolOfficeManager stop
INFO: stopping
四月 19, 2014 6:47:23 下午 org.artofsolving.jodconverter.office.OfficeConnection$1 disposing
INFO: disconnected: 'socket,host=127.0.0.1,port=2002,tcpNoDelay=1'
四月 19, 2014 6:47:23 下午 org.artofsolving.jodconverter.office.ManagedOfficeProcess doEnsureProcessExited
INFO: process exited with code 0
四月 19, 2014 6:47:23 下午 org.artofsolving.jodconverter.office.ProcessPoolOfficeManager stop
INFO: stopped
四月 19, 2014 6:47:23 下午 org.artofsolving.jodconverter.office.ProcessPoolOfficeManager <init>
INFO: ProcessManager implementation is PureJavaProcessManager
文件转换耗时:[9129]ms
四月 19, 2014 6:47:23 下午 org.artofsolving.jodconverter.office.OfficeProcess start
INFO: starting process with acceptString 'socket,host=127.0.0.1,port=2002,tcpNoDelay=1' and profileDir 'C:\Users\ADMINI~1\AppData\Local\Temp\.jodconverter_socket_host-127.0.0.1_port-2002'
四月 19, 2014 6:47:23 下午 org.artofsolving.jodconverter.office.OfficeProcess start
INFO: started process
四月 19, 2014 6:47:24 下午 org.artofsolving.jodconverter.office.OfficeConnection connect
INFO: connected: 'socket,host=127.0.0.1,port=2002,tcpNoDelay=1'
文件:e:/test.pptx
转换为
目标文件:e:\test.pdf
成功!
四月 19, 2014 6:47:28 下午 org.artofsolving.jodconverter.office.ProcessPoolOfficeManager stop
INFO: stopping
四月 19, 2014 6:47:28 下午 org.artofsolving.jodconverter.office.OfficeConnection$1 disposing
INFO: disconnected: 'socket,host=127.0.0.1,port=2002,tcpNoDelay=1'
四月 19, 2014 6:47:28 下午 org.artofsolving.jodconverter.office.ManagedOfficeProcess doEnsureProcessExited
INFO: process exited with code 0
四月 19, 2014 6:47:28 下午 org.artofsolving.jodconverter.office.ProcessPoolOfficeManager stop
INFO: stopped
文件转换耗时:[3993]ms
我这边的结果截图:

docsx测试:

pptx测试:

ATTENTION:
在做的过程中,你可能会涉及到修改的代码:
// 第一部分: main函数,主要是修改测试文档路径如:e:/test.pptx, e:/test.xls等等
public static void main(String[] args) {
Office2PDF office2pdf = new Office2PDF();
office2pdf.openOfficeToPDF("e:/test." + OFFICE_XLS, "e:/test_" + OFFICE_DOCX + "2" + OFFICE_TO_PDF + new Date().getTime() + "." + OFFICE_TO_PDF);
office2pdf.openOfficeToPDF("e:/test." + OFFICE_PPTX, null);
}
// 第二部分:修改Openoffice的安装目录,我的安装在D盘,且为Windows 7系统
public String getOfficeHome() {
String osName = System.getProperty("os.name");
if (Pattern.matches("Linux.*", osName)) {
return "/opt/openoffice.org3";
} else if (Pattern.matches("Windows.*", osName)) {
return "D:\\OpenOffice 4";
} else if (Pattern.matches("Mac.*", osName)) {
return "/Application/OpenOffice.org.app/Contents";
}
return null;
}
java开发_模仿百度文库_OpenOffice2PDF_注意事项的更多相关文章
- Java+FlexPaper+swfTools仿百度文库文档在线预览系统设计与实现
笔者最近在给客户开发文档管理系统时,客户要求上传到管理系统的文档(包括ppt,word,excel,txt)只能预览不允许下载.笔者想到了百度文库和豆丁网,百度文库和豆丁网的在线预览都是利用flash ...
- java开发_读写txt文件操作
package com.mi.util; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStr ...
- 1: java开发_""和null的区别
原文地址:http://www.cnblogs.com/hongten/archive/2012/11/08/java_null.html 在代码中: 1 //name可以为"", ...
- java开发_""和null的区别
转自:http://www.cnblogs.com/hongten/archive/2012/11/08/java_null.html#undefined 在代码中: 1 //name可以为" ...
- java开发_数字转换汉语中人民币的大写_完整版
做这个应用,源于突然的一个想法:看到发票上面的数字要转换成汉语中人民币的大写 于是就有了下面的这些事儿..... 先看看运行效果: ================================== ...
- python开发_搜索本地文件信息写入文件
功能:#在指定的盘符,如D盘,搜索出与用户给定后缀名(如:jpg,png)相关的文件 #然后把搜索出来的信息(相关文件的绝对路径),存放到用户指定的 #文件(如果文件不存在,则建立相应的文件)中 之前 ...
- 百度文库的实现——java利用openoffice,批量word转pdf
百度文库的主要功能就是将上传的word文档,转码成pdf格式再展示出来.其中有四种方法可以实现这样的操作: 方法一:用apache pio 读取doc文件,然后转成html文件用Jsoup格式化htm ...
- 实验一《Java开发环境的熟悉》_实验报告
实验一<Java开发环境的熟悉>_实验报告 一.实验内容与主要步骤 1.Linux系统命令行下java程序开发 实验要求 1 建立"自己学号exp1"的目录 2 在&q ...
- java web开发_购物车功能实现
java web开发_购物车功能实现 之前没有接触过购物车的东东,也不知道购物车应该怎么做,所以在查询了很多资料,总结一下购物车的功能实现. 查询的资料,找到三种方法: 1.用cookie实现购物车: ...
随机推荐
- 【翻译十四】java-并发之保护块儿
Guarded Blocks Threads often have to coordinate their actions. The most common coordination idiom is ...
- JVM_Bind:8080 的解决办法【131031】
出错情况:运行 Tomcat 时报错 含义:8080 位置显示的端口被其他进程占用 解决方法: 方法1: 开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID ...
- Atlas 安装和配置
前提得配置好主从:http://www.cnblogs.com/super-d2/p/4802990.html 首先,先去下载Altas的rpm包,下载地址:https://github.com/Qi ...
- html5 svg
html5 svg <html > <body> <p>canvas 用js 绘画,是整幅画布,适合游戏 svg可放大,支持dom 操作,js事件 线性渐变.高斯模 ...
- 7-15ALL、 ANY、SOME子查询
ALL:所有 ANY:部分 SOME:与ANY相同,使用ANY的地方都可以用SOME替换. >ALL:父查询中列的值必须大于子查询返回的值列表的每一个值. >ANY:父查询中的返回值必须大 ...
- Vue#条件渲染
根据不同的条件,响应不同的事件. https://jsfiddle.net/miloer/zed5p1r3/ 可以用template来包装元素,当然浏览器的最终渲染结果不会包含它.我觉得主要用它来自定 ...
- 安装Maven、Eclipse设置、添加地址JAR
1.下载Maven 地址:http://maven.apache.org/download.cgi 2.安装Maven 系统变量:MAVEN_HOME = D:\maven\apache-maven- ...
- MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践
主服务器上(注:应该是允许从机访问) GRANT REPLICATION SLAVE ON *.* to ‘rep1’@’192.168.10.131’ identified by ‘passwor ...
- 你必须知道的.NET之特性和属性(转)
1. 引言 attribute是.NET框架引入的有一技术亮点,因此我们有必要花点时间走进一个发现attribute登堂入室的入口.因为.NET Framework中使用了大量的定制特性来完成代码约定 ...
- Java会出现"unreachable code"错误的几个例子
public class exam { static int num=5; static int m1(){ try{ num=6; throw new NullPointerException(); ...