Android:如何解析JSON数组对象
任何机构能告诉我如何解析这种类型的json在android中?Android:如何解析JSON数组对象
[
[
{
"condition_id":"1",
"condition_name":"Type 1 Diebetics"
}
],
[
{
"condition_id":"2",
"condition_name":"Type 2 dypatise"
}
]
]
感谢
解决
非常感谢您nayoso
它为我工作。
String jsonString = "[
[
{
"condition_id":"1",
"condition_name":"Type 1 Diebetics"
}
],
[
{
"condition_id":"2",
"condition_name":"Type 2 dypatise"
}
]
]";
JSONArray jsonArray = new JSONArray(jsonString);
for(int i=0;i<jsonArray.length(),i++) {
JSONArray childJsonArray = jsonArray.getJSONArray(i);
JSONObject contentJsonObject = childJsonArray.getJSONObject(0);
String conditionID = contentJsonObject.getString('condition_id');
String conditionName = contentJsonObject.getString('condition_name');
Log.i("TAG","Index "+i+" condition_id "+conditionID+" condition_name "+conditionName);
}
您可以使用org.json库轻松完成此操作。整个事情是一个JSONArray;在位置0(使用.get(0))你有另一个JSONArray;在位置0处,您有一个JSONObject,它将键映射到值(使用.getString())。
谢谢chiastic-security
也让我明白。
您可以使用内置的JSONArray和JSONObject的类
String jsonString = "[
[
{
"condition_id":"1",
"condition_name":"Type 1 Diebetics"
}
],
[
{
"condition_id":"2",
"condition_name":"Type 2 dypatise"
}
]
]";
JSONArray jsonArray = new JSONArray(jsonString);
for(int i=0;i<jsonArray.length(),i++) {
JSONArray childJsonArray = jsonArray.getJSONArray(i);
JSONObject contentJsonObject = childJsonArray.getJSONObject(0);
String conditionID = contentJsonObject.getString('condition_id');
String conditionName = contentJsonObject.getString('condition_name');
Log.i("TAG","Index "+i+" condition_id "+conditionID+" condition_name "+conditionName);
}
我得到这个异常org.json.JSONException:价值[{“condition_id”:“2”,“condition_name”:“类型2 dypatise”}]在1类型org.json.JSONArray无法转换为JSONObject – 2014-09-30 09:45:38
也致命异常:AsyncTask#1 java.lang.RuntimeException:执行doInBackground()时发生错误 和java.lang.NoSuchMethodError:org.json.JSONArray。
其解决了,我得到的价值非常感谢, – 2014-09-30 09:53:55
您可以使用org.json
库轻松完成此操作。整个事情是一个JSONArray
;在位置0(使用.get(0)
)您有另一个JSONArray
;在位置0处,您有一个JSONObject
,它将键映射到值(使用.getString()
)。
试试这个
String data = ""; //your json data string
JSONArray jarray = new JSONArray(data);
for(int i = 0;i < jarray.length(); i++) {
JSONArray jarry1 = jarray.getJSONArray(i);
for(int j = 0; j < jarry1.length(); j++) {
JSONObject jobj = jarry1.getJSONObject(0);
String ConditionId = jobj.getString("condition_id");
String ConditionName = jobj.getString("condition_name");
}
}
JSONArray jsonarray=new JSONArray(your_data);
for(int i=0;i<jsonarray.length();i++)
{
JSONArray array=jsonarray.getJSONArray(i);
for(int j=0;j<array.length();j++)
{
JSONObject jsonObject=array.getJSONObject(0);
String ConditionId=jsonObject.getString("condition_id");
String ConditionName=jsonObject.getString("condition_name");
}
}
JSONArray jsonArray = new JSONArray("Your Data");
JSONArray tempArray ;
net.sf.json.JSONObject tempJson ;
for(int i = 0 ; i < jsonArray.length() ; i++)
{
tempArray = jsonArray.getJSONArray(i);
tempJson = tempArray.getJSONObject(0);
tempJson.get("condition_id");
....data So On
}
[这](https://developer.android.com/reference/ android/util/JsonReader.html)几乎可以解释它。 – 2014-09-30 09:32:52
感谢您的回应我读过它。 – 2014-09-30 09:34:04
为何让我反对这个问题的投票? – 2014-09-30 09:58:35