gpt4 book ai didi

Java:从文件系统加载资源

转载 作者:行者123 更新时间:2023-12-02 09:26:33 25 4
gpt4 key购买 nike

我的项目设置

我有以下项目设置:

\program.jar  
\images\logo.png

在我的代码中,我使用相对 URL “images/logo.png” 引用图像。

问题

如果我在目录中使用以下命令运行该程序:

c:\projects\program_dir\bin\>java -jar program.jar

然后一切正常,Java 能够找到图像。

现在,我的问题是,我需要能够从不同的目录运行该程序。

c:\>java -jar c:\projects\program_dir\bin\program.jar

程序已执行,但现在所有相对 URL 不再起作用。

我需要什么

如何计算program.jar文件的执行主目录,以便将相对URL更改为绝对URL?

最佳答案

如果可能的话,我会做的是将您的图像打包到您的 Jar 中。

这样你就不必担心你的 Jar 是从哪里启动的。

然后您需要加载类似于以下内容的图像:

InputStream stream = this.getClass().getClassLoader().
getResourceAsStream("/images/logo.png");

关于Java:从文件系统加载资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3309022/

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