jar包调用相对路径之项目外资源
2010-03-16 16:42
260 查看
写好一个桌面程序后,想把它打包,并将其配置文件*.properties放在项目外面,以便能够对桌面程序的各种参数进行实时修改,而不用每次都要对项目重新打包。这时候,我们就需要将*.properties文件放置在项目jar包的外面。
采用的思路很简单。通过对程序中任一文件的实时绝对url(根据jar包放在位置不同,而自动改变的)的获取,来对这个url进行解码,以防止url中有中文或日文文字而乱码的情况。然后再对获取的路径进行一些简单的拼装就可以达到,获取项目jar包外的属性配置文件了。
String url = Shortcut.class.getClassLoader().getResource("*.txt").getPath();
String urlDecode = URLDecoder.decode(url, "UTF-8");
int postion = urlDecode.lastIndexOf("start.jar");
if(url.contains("start.jar")){
String path = urlDecode.substring(6, postion);
String filePath = path+"Shortcut.properties";
pro.load(new FileInputStream(filePath));
}
采用的思路很简单。通过对程序中任一文件的实时绝对url(根据jar包放在位置不同,而自动改变的)的获取,来对这个url进行解码,以防止url中有中文或日文文字而乱码的情况。然后再对获取的路径进行一些简单的拼装就可以达到,获取项目jar包外的属性配置文件了。
String url = Shortcut.class.getClassLoader().getResource("*.txt").getPath();
String urlDecode = URLDecoder.decode(url, "UTF-8");
int postion = urlDecode.lastIndexOf("start.jar");
if(url.contains("start.jar")){
String path = urlDecode.substring(6, postion);
String filePath = path+"Shortcut.properties";
pro.load(new FileInputStream(filePath));
}
相关文章推荐
- vue项目打包后资源相对引用路径的和背景图片路径问题
- Java SE工程项目使用相对路径添加jar包
- Android项目export成jar file,调用资源
- python项目中不同文件夹py源文件之间如何相互调用--Python import中相对路径的问题
- VS项目中调用他人提供的.lib和.dll文件的用法(绝对路径和相对路径)
- 在java项目中通过相对路径获取资源的方式
- Java SE工程项目使用相对路径添加jar包
- 在java项目中通过相对路径获取资源的方式
- Android项目导出为jar包后调用外部资源的问题
- 如何把使用到android res文件夹下面资源(R.xx.xx)的工程打包成jar文件,供其它项目使用
- spring mvc 项目 系统在那个的相对路径
- java项目中的路径调用
- 【转】Visual Studio项目相对路径的设置,实用
- ASP.NET项目中调用ZedGraph生成图片并返回路径的方法
- 在JAVA文件中获取该项目的相对路径
- Android--将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
- Unity3d开发android项目时引入jar包读取图片资源的问题
- C#调用MFC程序DLL库——MFC项目DLL生成问题、DLL引用链问题、DLL读取配置文件路径问题
- eclipseWeb项目资源路径学习笔记
- 解决打包生成JAR在Android项目中不能调用问题