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 double比较大小吗,
- 下一篇: android imagebutton