在本文中,我们向您展示了两种使用Java打开PDF文件的方法。
1. rundll32 – Windows平台解决方案
在Windows中,您可以使用“ rundll32 ”命令启动PDF文件,请参见示例:
package com.mkyong.jdbc;
import java.io.File;
//Windows solution to view a PDF file
public class WindowsPlatformAppPDF {
public static void main(String[] args) {
try {
if ((new File("c:\\Java-Interview.pdf")).exists()) {
Process p = Runtime
.getRuntime()
.exec("rundll32 url.dll,FileProtocolHandler c:\\Java-Interview.pdf");
p.waitFor();
} else {
System.out.println("File is not exists");
}
System.out.println("Done");
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
2. Awt Desktop –跨平台解决方案
始终建议使用此Awt Desktop跨平台解决方案,因为它可在* nix,Windows和Mac平台上使用。
package com.mkyong.io;
import java.awt.Desktop;
import java.io.File;
//Cross platform solution to view a PDF file
public class AnyPlatformAppPDF {
public static void main(String[] args) {
try {
File pdfFile = new File("c:\\Java-Interview.pdf");
if (pdfFile.exists()) {
if (Desktop.isDesktopSupported()) {
Desktop.getDesktop().open(pdfFile);
} else {
System.out.println("Awt Desktop is not supported!");
}
} else {
System.out.println("File is not exists!");
}
System.out.println("Done");
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
参考
翻译自: https://mkyong.com/java/how-to-open-a-pdf-file-in-java/