gpt4 book ai didi

java - 访问存储在 .jar 中的 PDF 文件

转载 作者:行者123 更新时间:2023-12-01 04:20:01 25 4
gpt4 key购买 nike

我正在创建一个 GUI,我打算添加一个简单的 pdf 文件作为帮助文件。我将其包含在资源包中并在该板上进行搜索,我得到了以下代码:

private void GuideActionPerformed(java.awt.event.ActionEvent evt) {                                      
if (Desktop.isDesktopSupported()) {
try {
File myFile = new File(("Help.pdf"));
if (!myFile.exists()) {
// In JAR
InputStream inputStream = ClassLoader.getSystemClassLoader()
.getResourceAsStream("resources/manual.pdf");
// Copy file
OutputStream outputStream = new FileOutputStream(myFile);
byte[] buffer = new byte[1024];
int length;
while ((length = inputStream.read(buffer)) > 0) {
outputStream.write(buffer, 0, length);
}
outputStream.close();
inputStream.close();
}
Desktop.getDesktop().open(myFile);
} catch (IOException ex) {
// no application registered for PDFs
}
}

问题是现在 pdf 阅读器无法访问该文件,因为它已被 java 应用程序使用。有办法解决吗?否则,我将简单地将文件添加到 dist 并计算出资源路径。

最佳答案

我尝试了您的代码,它运行得很好,请检查您是否在源代码中创建了文件夹resources,其中包含文件manual.pdf。另外,当您创建 jar 时,请检查这些文件是否已导出。

关于java - 访问存储在 .jar 中的 PDF 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19029107/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com