从jar文件夹打开pdf文件时出错

时间:2013-11-04 14:57:26

标签: java jar

我正在制作一个软件,我必须显示pdf文件。我已将pdf文件存储在我的项目文件夹中。该软件运行完美。

但是当我清理并构建项目然后我运行我的jar exe文件时,pdf文件没有打开。

经过一些实验,我将我的pdf文件包含在SRC文件夹中,然后清理并构建项目。我发现的差异是,现在jar文件的大小更大(它等于所有pdf文件的总和),我想这次它会起作用。但它没有用。

然后经过更多实验后,我将所有文件都包含在Dist文件夹中。

然后jar文件可以打开pdf文件:),我很开心但不满意,因为我只需要创建一个jar文件并查看项目文件夹中的所有pdf文件,其中一个jar文件看起来真的很笨拙而且毫无意义无论如何,我只能使用jar文件打开pdf文件而不复制存储我的jar文件的文件夹中的pdf文件。这是我用来打开名为“aleemullah resume”的文件的代码。

try{
    Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + "aleemullah resume.pdf");
}
catch (Exception e) {
        JOptionPane.showMessageDialog(null, "Error");
}

1 个答案:

答案 0 :(得分:1)

看起来您正在从当前工作目录(即从中启动程序的文件夹)中读取PDF文件。按照这种逻辑,您应该能够通过输入完整路径打开存储在任何地方的PDF,而不仅仅是文件名。例如:

String filePath = "C:\Users\you\Desktop\aleemullah resume.pdf"
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + filePath);

filePath变量更改为存储PDF文件的位置。

如果您希望用户在运行时选择PDF,您也可以考虑使用JFileChooser来选择文件。查看this example如何从Java打开对话框以选择PDF文件并检索其路径。