亲爱的专家,这个问题与
更新的问题
我使用了两个代码:
如果我从workspace
.
URL resource = Thread.currentThread().getContextClassLoader().getResource("resources/User_Guide.pdf");
File userGuideFile = null;
try {
userGuideFile = new File(resource.getPath());
if (Desktop.isDesktopSupported())
{
Desktop desktop = Desktop.getDesktop();
desktop.open(userGuideFile);
}
} catch (Exception e1) {
e1.printStackTrace();
}
但是如果我将我的复制project.jar
到另一个位置,它将不会打开文件并在我的日志中显示为file is not found "c:\workspace\project...pdf"
. 我使用了来自同一页面的以下代码,我的pdfReader adobe reader 显示异常 file is either not supproted or damaged
:
代码:
if (Desktop.isDesktopSupported())
{
Desktop desktop = Desktop.getDesktop();
InputStream resource = Thread.currentThread().getContextClassLoader().getResource("resources/User_Guide.pdf");
try
{
File file = File.createTempFile("User_Guide", ".pdf");
file.deleteOnExit();
OutputStream out = new FileOutputStream(file);
try
{
// copy contents from resource to out
}
finally
{
out.close();
}
desktop.open(file);
}
finally
{
resource.close();
}
}
请给我一些想法。您的帮助将不胜感激。谢谢你
注意:我试图打开*.txt
文件,它工作正常。但不能在PDF
and中工作DOC
。主要问题是当我运行应用程序更改项目工作空间目录时。其实我想做这样的: 菜单下的Ntebeans键盘短代码文档Help