Java .class.getResourceAsStream()

时间:2013-02-20 10:42:43

标签: java jar inputstream

据我所知,Class.getResourceAsStream()获取了InputStream针对.jar文件中的文件?如果我对此有误,请纠正我。

有没有办法暂时将外部文件“加载”到.jar中,以便getResourceAsStream()方法可以检索它?

例如,将C:/folder/file.txt加载到.jar中,以便MyClass.class .getResourceAsStream("file.txt")向文件返回一个工作InputStream,或者至少暂时将其“加载”的副本.jar。

对不起,我的措辞非常糟糕,我希望你能理解我想做的事,不太确定如何解释它。

2 个答案:

答案 0 :(得分:4)

不,getResourceAsStream()方法从类路径中获取文件。这包括在命令行上指定的任何内容(Windows版本,linux使用':'作为分隔符):

java -cp "path;path2;path3;path4/some.jar" your.main.Clazz

答案 1 :(得分:1)

this.getClass().getResourceAsStream("myImage.png");

确保您的图像在类路径中。不要将其放入任何JAR中。