【发布时间】:2013-05-07 02:43:08
【问题描述】:
我正在访问一项服务,有时会返回如下内容:
{ "param1": "value1", "param2": "value2" }
有时会得到这样的回报:
[{ "param1": "value1", "param2": "value2" },{ "param1": "value1", "param2": "value2" }]
我怎么知道我得到了什么?当我执行 getClass() 时,它们都评估为字符串,但如果我尝试这样做:
json = (JSONObject) new JSONParser().parse(result);
在第二种情况下我得到一个例外
org.json.simple.JSONArray cannot be cast to org.json.simple.JSONObject
如何避免这种情况?我只想知道如何检查我要回来的。 (第一种情况有时会有[],所以我不能做索引,我想要一种比只检查第一个字符更干净的方法。
一定有某种方法可以检查吗?
【问题讨论】:
-
检查字符串是否以
[]开头和结尾应该很简单。你试过什么? -
我可以判断它是否存在并以 [] 结尾,但问题是我得到一个字符串 "[{\"param1\"...},{...}]"我似乎无法再次转换为数组。
标签: java json types json-simple