我正在寻找一种将字符串转换为 JSON 对象的方法,反之亦然。
我有一个带有 JSON 表示法的字符串作为值。我需要将此值转换为 JSON 对象,以便从 JSON 对象中获取特定数据。Afterwarts,我需要将特定的 JSON 对象(属性)转换为 JAVA 属性。
有谁知道如何实现这一目标?我知道 Javaimport org.json.JSONObject;
可以让我创建 JSONObjects,但我不知道如何将我的 JSON 字符串转换为 JSON 对象。
您可以使用 JSONObject 构造函数
public JSONObject(java.lang.String source) throws JSONException
http://www.json.org/javadoc/org/json/JSONObject.html#JSONObject%28java.lang.String%29
您必须解析字符串: How to Parse JSON in Java
使用杰克逊,你可以做类似的事情
ObjectMapper mapper = new ObjectMapper();
MyObject result = mapper.readValue( myString, MyObject.class );
如果您没有对象映射,则可以将其映射到一个类。
ObjectMapper mapper = new ObjectMapper();
Map<String, Object> mymap = mapper.readValue( myString, Map.class );
如果不想使用 Jackson,可以查看gson,同样直观。
objectMapper.writeValue(new File("c:\\employee.json"), employee);
// display to console
Object json = objectMapper.readValue(
objectMapper.writeValueAsString(employee), Object.class);
System.out.println(objectMapper.writerWithDefaultPrettyPrinter()
.writeValueAsString(json));
阅读文档。
String json = ....
JSONObject jsonObject = new JSONObject(json);