Jes*_*sen 2 java file-io resources
我的项目设置
我有以下项目设置:
\program.jar
\images\logo.png
Run Code Online (Sandbox Code Playgroud)
在我的代码中,我使用相对URL引用图像"images/logo.png".
问题
如果我在目录中使用以下命令运行此程序:
c:\projects\program_dir\bin\>java -jar program.jar
Run Code Online (Sandbox Code Playgroud)
然后一切正常,Java能够找到图像.
现在,我的问题是,我需要能够从不同的目录运行该程序.
c:\>java -jar c:\projects\program_dir\bin\program.jar
Run Code Online (Sandbox Code Playgroud)
程序已执行,但现在所有相对URL都不再有效.
我需要的
如何计算program.jar文件的执行主页,以便我可以将相对URL更改为绝对URL?
如果可能的话,我会做的就是用你的罐装你的图像.
这样您就不必担心Jar的启动位置了.
然后,您需要加载类似于以下内容的图像:
InputStream stream = this.getClass().getClassLoader().
getResourceAsStream("/images/logo.png");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8373 次 |
| 最近记录: |