在Jar包中读取文件

2014-11-24 03:26:39 · 作者: · 浏览: 0

自己写好的程序,打包成Jar包。但是在自己的Jar包中读取自己的文件,不能直接用FileReader

BufferedReader breader  = new BufferedReader(new FileReader(new File("myfile")));

Google了几个方案,最后有用的是通过class.getClassLoader().getResourceAsStream()用InputStream,例如:

InputStream iStream = TIN_RawProximity.class.getClassLoader().getResourceAsStream(Utility.LOCAL_QUERYCIRCLE_PATH);
BufferedReader bReader = new BufferedReader(new InputStreamReader(iStream));

Reference:

http://stackoverflow.com/questions/15231441/java-inputstream-fails-to-read-file-from-within-jar

http://cs.dvc.edu/HowTo_ReadJars.html

http://www.rgagnon.com/javadetails/java-0077.html