我在 Netbeans 上创建了一个 Java 应用程序,我想在单击按钮时启动一个 PDF 文件。
我首先做的是将文件“manual.pdf”放在我有我的课程的目录中,我尝试了这段代码:
if(Desktop.isDesktopSupported()) {
try {
File file= new File("manual.pdf");
Desktop.getDesktop().open(file);
} catch(IOException ex) {...}
但是当我运行它时,它说该文件不存在,所以我把
System.out.println(file.getAbsolutePath());
为了查看它试图打开的文件的路径,它是
C:\Users\adrian\Documents\Mis Programas\Convertron\manual.pdf
但文件在
C:\Users\adrian\Documents\Mis Programas\Convertron\src\org\sicadcam\convertron\manual.pdf
它正在项目的根目录中寻找文件。
当我将文件manual.pdf
放在根目录中时,它可以工作,但是,当我在 dist 目录中运行可执行 jar 时,它没有。
然后我尝试了
File file = new File(ConvertronController.class.getResource("manual.pdf").toExternalForm());
只是想看看会发生什么,但它没有用。
我怎样才能使它在类所在的同一目录中查找文件?
或者我应该将文件放在哪里,以便在构建应用程序时它可以继续工作?