我一直在尝试从我的src文件夹中的res文件夹加载我的json文件(LandInfo)。
我想加载文件,以便可以使用Gson解析它。
我尝试过:
getClass().getResource("res/LandInfo").toExternalForm()
和
new InputStream(getClass().getResourceStream("res/LandInfo"))
因为Gson#fromJSon接受字符串或读者
但是,两个选项都返回null。
我如何以正确的方式查找文件?
答案 0 :(得分:3)
getClass()。getResource()从您的类所在的目录中加载资源(此处为" src / sample") 因此,此方法返回的URL看起来像" src / sample / res / LandInfo"这是不正确的。
相反,您可以使用:
getClass().getResource("../res/LandInfo").toExternalForm()
和
new InputStream(getClass().getResourceStream("../res/LandInfo"))
在使用Maven,Gradle等构建管理器时,还要确保将非java文件(资源)复制到构建文件夹中