我想在Java项目中为我的资源创建一个单独的文件夹。如何,以上帝的名义,我能做到这么简单的事情?我一直试图让它工作很长一段时间,它开始让我疯狂。这是我到目前为止所尝试的:
1)我打开了Build Path Settings并在我的源文件夹中添加了一个名为“resources”的文件夹。
2)我在该文件夹中添加了两个文件夹,名为“font”,“img”包含图像和字体文件。
3)我尝试使用以下代码访问这些文件:
getClassLoader()据说给了我一个绝对路径,所以我选择了一条没有前导/
的路径:
getClass().getClassLoader().getResourceAsStream("resources/font/MyFont.otf")
返回null。为什么eclipse中的文件管理如此令人生气?
答案 0 :(得分:1)
我有一个解决方案。应该工作
第1步:
InputStream is = this.getClass().getClassLoader().getResourceAsStream("font/MyFont.otf");
第2步:
在Eclipse中
run > run configurations > classpath > select user entries > advanced > add folders > select resource folder
此后运行项目。原因是资源文件夹需要在类路径中。
答案 1 :(得分:1)
如果您在构建路径设置中添加了“resources”文件夹作为源文件夹,则应该能够加载如下所示的字体。
getClass().getClassLoader().getResourceAsStream("font/MyFont.otf")
将“resources”文件夹指定为源文件夹后,eclipse将其包含在java的类路径的根目录中。所以你只需要相对于资源文件夹的路径。
答案 2 :(得分:0)
试试这个
getClass().getClassLoader().getResourceAsStream("/font/MyFont.otf")