日期:2014-05-20  浏览次数:20927 次

jar包中配置文件的读取问题
我在src底下有一个xml配置文件,一个类文件去读取(修改)该配置文件,当没打包时程序没错,打包以后(配置文件和那个类文件在同一个包中),发生了错误:
FileNotFoundException提示该配置文件找不到
我是用这样的方法读取该配置文件:
new   FileReader( "dbSelect.xml ")

------解决方案--------------------
已经被打包到Jar里了,当然不能像你那么做了
读取还好说,如下:
String currentJarPath = URLDecoder.decode(YourClassName.class.getProtectionDomain().getCodeSource().getLocation().getFile(), "UTF-8 "); //获取当前Jar文件名
java.util.jar.JarFile currentJar = new java.util.jar.JarFile(currentJarPath);
java.util.jar.JarEntry dbEntry = currentJar.getJarEntry( "包名/dbSelect.xml ");
InputStream in = currentJar.getInputStream(dbEntry);
//以上YourClassName是class全名,也就是包括包名

修改就不好做了。。。