我有一个 PDF 文件,我想用我的 java 应用程序打开它。当我使用 Netbeans 运行该程序时打开 PDF 文件。但是当我从 .Jar 文件运行该程序时,该 PDF 文件没有打开。
try {
String p1[] = getClass().getResource("/Scholars_Management_System_Help.pdf").toString().split("file:/");
String helppath = p1[1].replace("%20", " ");
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + helppath);
} catch (IOException ex) {
JOptionPane.showMessageDialog(null, ex, "Error", JOptionPane.ERROR_MESSAGE);
Logger.getLogger(Home.class.getName()).log(Level.SEVERE, null, ex);
}
最佳答案
我认为 getClass().getResource("/Scholars_Management_System_Help.pdf")
在您的项目根目录中找到一个名为 Scholars_Management_System_Help.pdf 的文件,当您创建 jar 文件时,该文件可能不包含在内在 jar 里,这就是为什么这不起作用。您可能应该从命令行运行 jar,以便查看是否有任何异常抛出。这样您就可以确定问题的原因。
同样,不要使用 Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler "+ helppath);
来运行应用程序(pdf 阅读器),您应该使用 Desktop。 getDesktop().open(file_name);
这使得它更便携。
关于java - 如何在Java中打开具有不同路径的pdf文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15320558/