我有一个 Java 编程问题,需要帮助!
我的类文件位于单独的包中(不是默认包)。我正在尝试从我的 res 文件夹访问文件。我已将其添加为类文件夹(使用属性 --> 库 --> 添加类文件夹)在我的类中,我有以下代码:
InputStream IS = getClass().getResourceAsStream("mytextfile.txt");
然而它不起作用,我有所有正确的导入和一切,但我就是无法让它工作......(当我尝试使用 IS 时给出空指针异常)
我认为这与使用单独的包有关,因为我有另一个使用默认包的程序并且它工作正常......
我想要一种在使用 Eclipse 和将其导出为 .jar 时都可以访问该文件的方法。
在此先感谢您的帮助!
编辑:我尝试过使用 /res/mytextfile.txt 但这也不起作用......
getClass().getResource
将查找相对于该类存在的位置的指定资源。
所以如果该类存在于包中foo.bar
, getResource
会查看foo/bar/mytextfile.txt
(给类添加前缀、类加载器的类路径上下文...)
相反,尝试使用相对路径,例如
InputStream IS = getClass().getResourceAsStream("/mytextfile.txt");
or
InputStream IS = getClass().getResourceAsStream("/res/mytextfile.txt");
假设资源目录名为res
并存在于默认包下
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)