在模仿百度文库的操作过程中,有很多朋友反映出来的一些问题,是我想起了写这篇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_注意事项的更多相关文章

  1. Java+FlexPaper+swfTools仿百度文库文档在线预览系统设计与实现

    笔者最近在给客户开发文档管理系统时,客户要求上传到管理系统的文档(包括ppt,word,excel,txt)只能预览不允许下载.笔者想到了百度文库和豆丁网,百度文库和豆丁网的在线预览都是利用flash ...

  2. java开发_读写txt文件操作

    package com.mi.util; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStr ...

  3. 1: java开发_""和null的区别

    原文地址:http://www.cnblogs.com/hongten/archive/2012/11/08/java_null.html 在代码中: 1 //name可以为"", ...

  4. java开发_""和null的区别

    转自:http://www.cnblogs.com/hongten/archive/2012/11/08/java_null.html#undefined 在代码中: 1 //name可以为" ...

  5. java开发_数字转换汉语中人民币的大写_完整版

    做这个应用,源于突然的一个想法:看到发票上面的数字要转换成汉语中人民币的大写 于是就有了下面的这些事儿..... 先看看运行效果: ================================== ...

  6. python开发_搜索本地文件信息写入文件

    功能:#在指定的盘符,如D盘,搜索出与用户给定后缀名(如:jpg,png)相关的文件 #然后把搜索出来的信息(相关文件的绝对路径),存放到用户指定的 #文件(如果文件不存在,则建立相应的文件)中 之前 ...

  7. 百度文库的实现——java利用openoffice,批量word转pdf

    百度文库的主要功能就是将上传的word文档,转码成pdf格式再展示出来.其中有四种方法可以实现这样的操作: 方法一:用apache pio 读取doc文件,然后转成html文件用Jsoup格式化htm ...

  8. 实验一《Java开发环境的熟悉》_实验报告

    实验一<Java开发环境的熟悉>_实验报告 一.实验内容与主要步骤 1.Linux系统命令行下java程序开发 实验要求 1 建立"自己学号exp1"的目录 2 在&q ...

  9. java web开发_购物车功能实现

    java web开发_购物车功能实现 之前没有接触过购物车的东东,也不知道购物车应该怎么做,所以在查询了很多资料,总结一下购物车的功能实现. 查询的资料,找到三种方法: 1.用cookie实现购物车: ...

随机推荐

  1. 7z命令行工具

    7z (中文)是优秀开源的压缩解压缩软件(wiki: en  中文),有windows版本与linux版本,最新的9.32版本支持的格式包括: 压缩与解压缩均支持:7z, XZ, BZIP2, GZI ...

  2. 攻城狮在路上(叁)Linux(二十九)--- 完整备份工具:dump以及restore

    一.dump命令: 该命令既可以针对整个文件系统进行备份,也可以仅针对目录来备份.还可以指定不同的备份等级(-0~-9共10个等级). dump -W:列出在/etc/fstab中具有dump设置的分 ...

  3. 2-06使用SQL语句创建数据库3

    向现有数据库中添加文件组和数据文件几种方式以及步骤: 第一种:在视图下添加文件组和数据文件. 添加文件组的步骤: 右击你想要添加文件组的数据库点属性,然后点文件组就可以添加. 添加数据文件的步骤: 下 ...

  4. 解决phpcms V9 推荐位无法排序

    /phpcms/modules/content/content.php 454行 /** * 排序 */public function listorder() { if(isset($_GET['do ...

  5. 优秀的API接口设计原则及方法(转)

    一旦API发生变化,就可能对相关的调用者带来巨大的代价,用户需要排查所有调用的代码,需要调整所有与之相关的部分,这些工作对他们来说都是额外的.如果辛辛苦苦完成这些以后,还发现了相关的bug,那对用户的 ...

  6. ios调用系统导航

    #import "ViewController.h" #import <MapKit/MapKit.h> @interface ViewController () @p ...

  7. ROC曲线绘制

    ROC 曲线绘制 个人的浅显理解:1.ROC曲线必须是针对连续值输入的,通过选定不同的阈值而得到光滑而且连续的ROC曲线,故通常应用于Saliency算法评价中,因为可以选定0~255中任意的值进行阈 ...

  8. JS(获得当前时间并且用2015-01-01格式表示)

    一个简单的小例子,实现获得当前时间,js代码如下: function getdate() {var date = new Date();var mon = date.getMonth()  + 1;  ...

  9. iOS Xcode注释的几种使用方法

    1.#pragma mark - 方法分割线 2.#pragma mark 要备注的内容 3.// MARK: 要备注的内容 4.// FIXME: 要备注的内容 5.// TODO: 要备注的内容 ...

  10. OpenCV 线性混合(4)

      带滚动条的线性混合示例:   #include "stdafx.h" #include<iostream> #include<thread> #incl ...