如何解析JSON,如:
{
"key1": {
"subKey1" : {
"field1": "value",
"field2": "value"
},
"subKey2": {
"field1": "value",
"field2": "value"
}
},
"key2": {
"subKey1" : {
"field1": "value",
"field2": "value"
},
"subKey2": {
"field1": "value",
"field2": "value"
}
}
}
获取对象结构,如:
// key* subKey*
Map<String, Map<String, DataType>> map;
public class DataType {
private String field1;
private String field2;
}
如果这个结构太复杂,如何解析 只是一个DataType的地图?
答案 0 :(得分:2)
解决方案非常简单:
ObjectMapper jsonMapper = new ObjectMapper();
TypeReference<Map<String, Map<String, DataType>>> typeRef =
new TypeReference<Map<String, Map<String, DataType>>>() {};
Map<String, Map<String, DataType>> configMap = jsonMapper.readValue(strJson, typeRef);
答案 1 :(得分:0)
我一直在处理同样的问题。我已设法将其变为字符串,然后使用...
手动查找字符串
String string1 = "example of response";
string1.contains(response.body().getAsJsonObject().toString());
另一个替代方法是使用正则表达式(http://www.rexegg.com/regex-quickstart.html)来提取您想要用逗号替换字符(如}和]的字符串...
希望这在某种程度上有所帮助。对不起,这不太方便