JSON解析使用简单的JSON库
问题描述:
import org.json.simple.JSONObject;
import org.json.simple.JSONValue;
String Json = {"AccountToken":{"string":"hello"},"Event":{"string":"t"}}
JSONObject genreJsonObject =(JSONObject)JSONValue.parseWithException(json);
String account_id = (String) genreJsonObject.get("AccountToken");
抛出java.lang.ClassCastException错误JSON解析使用简单的JSON库
出了什么问题,请帮助?
答
AccountToken是一个JSON对象,而不是字符串...
你需要将它转换为JSONObject的并在其上调用get()再次从它的内部结构得到的值
String json = "{\"AccountToken\":{\"string\":\"hello\"},\"Event\":{\"string\":\"t\"}}";
JSONObject genreJsonObject =(JSONObject)JSONValue.parseWithException(json);
JSONObject accountToken = (JSONObject) genreJsonObject.get("AccountToken");
System.out.println(accountToken.get("string"));
==> hello
例如'AccountToken'的内容不是字符串? – njzk2 2015-02-11 21:22:38
如果AccountToken也是jsonObject,代码将如何更改? – user2942227 2015-02-11 21:31:58
AccountToken不是一个字符串。 – eckes 2015-02-11 21:48:34