使用Gson解析具有未定义长度的json子串

时间:2014-08-11 14:35:52

标签: json gson

例如,我有:

String s = "name: {\"first\": \"Terry\", \"last\": \"Bogard\"}, age: 24, hobby: \"Video games\", dislikes: [\"Slugs\"]";

它包含一组参数,这些参数值是正确的json字符串(给定字符串的子字符串),结构未知。

是否可以使用Gson从字符串中提取一些ObjectJsonElement,只知道起始位置?当然可以得到最终的位置。

对于给定的示例,我希望得到类似的内容:

StringReader sReader = new StringReader(s);
SomeParameterNameReader nReader = new SomeParameterNameReader(sReader);
JsonReader jReader = new JsonReader(sReader);

Map<String, Object> map = new HashMap();
Gson gson = new Gson();
while (sReader.hasMore()) {
    String key = nReader.readName();
    Object value = gson.fromJson(jReader, Object.class);
    map.put(key, value);
}

0 个答案:

没有答案