Java读取jar包下的文件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fengsheng5210/article/details/80856392

问题描述

读取jar包下面的文件,当程序在eclipse里面的时候,classpath下的文件可以读取到,可一旦将程序打成jar包,则文件读取不到

解决方案

//获取InputStream流的时候,使用下面的方式获取,在eclipse工程/jar包下都不会出错
//path里面的值从jar包的根目录下开始写
InputStream is=Test.class.getClassLoader().getResourceAsStream("bbb.txt");

相关方法

//下面这种方式可以获取到jar包路径,比如/test/aaa.jar,但是我们无法在路径后面获取到jar包里面的文件
Test.class.getProtectionDomain().getCodeSource().getLocation().getPath();
//下面这种方式可以得到jar包里面文件的路径,比如/test/aaa.jar!bbb.txt
//在eclipse工程里可以读取文件,但是打成jar包以后依然读取不到文件流
Test.class.getClassLoader().getResource("bbb.txt").getPath();

猜你喜欢

转载自blog.csdn.net/fengsheng5210/article/details/80856392
今日推荐