我正在使用 httprequest
从网络获取Json数据并将其转换为字符串。
这很简单,但我似乎无法将此字符串转换为 javax.json.JsonObject
。
我该怎么做?
我正在使用 httprequest
从网络获取Json数据并将其转换为字符串。
这很简单,但我似乎无法将此字符串转换为 javax.json.JsonObject
。
我该怎么做?
由于上面的评论者不喜欢我的编辑,这里有一些你可以复制粘贴到你自己的代码中:
private static JsonObject jsonFromString(String jsonObjectStr) {
JsonReader jsonReader = Json.createReader(new StringReader(jsonObjectStr));
JsonObject object = jsonReader.readObject();
jsonReader.close();
return object;
}
我知道这是一个过时的问题,而且这个答案在几年前可能已经不相关了,但是仍然有用。 使用Jackson Library是解决此问题最简单的技术。 Jackson库是一种高效且广泛使用的Java库,可将Java对象映射到JSON和反之。以下语句将代表学生的JSON字符串转换为代表该学生的Java类。
Student student = new ObjectMapper().readValue(jsonString, Student.class);
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
public class J {
public static void main(String[] args) throws JsonProcessingException {
var json =
"""
{
"candle": {
"heat": 10,
"color": "orange"
},
"water": {
"heat": 1,
"color": null
}
}
""";
ObjectMapper mapper = new ObjectMapper();
var node = mapper.readTree(json);
System.out.println(node.toPrettyString());
}
}
javax.json.JsonObject
。我在这个答案中找不到这样的对象。 - yaccob