我的项目的 src/test/resources 包中有一个 json 文件 SenderTest.json。我认为我将 json 对象反序列化为 java 对象的方法是正确的。JsonObject json = new JsonObject();String jsonStrng = json.toString();ObjectMapper mapper = new ObjectMapper();mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);Animal animal = mapper.readValue(jsonStrng, Animal.class);但我很难理解如何将 SenderTest.json 从资源包中获取到这个 JsonObject
2 回答
呼唤远方
TA贡献1856条经验 获得超11个赞
尝试这个。
Animal animal = mapper.readValue(new FileInputStream(new File("SenderTest.json")), Animal.class);
在这里,我们传递InputStream
的第一个参数的readValue
方法
慕容708150
TA贡献1831条经验 获得超4个赞
如果您的问题是“我如何读取位于项目本身内的文件”,之前有人问过这个问题 - 请尝试以下问题作为示例:从项目目录内的文件夹中读取文件
如果您实际上是在问“如何在不通过对象映射和显式反序列化的情况下读取文件”,您可以执行以下操作:
new JSONObject( IOUtils.toString( new FileInputStream( path.toString() ), "UTF-8" ) );
添加回答
举报
0/150
提交
取消