jar包调用相对路径之项目外资源

    写好一个桌面程序后,想把它打包,并将其配置文件*.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));
    }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值