Android JSON解析jsonデータ
13457 ワード
一、JSONとは何ですか.
JSONはXMLに取って代わるデータ構造であり、xmlに比べてコンパクトだが記述能力は悪くない.コンパクトであるため、ネットワーク伝送データはより多くのトラフィックを減少させ、速度を速める.JSONは文字列ですが、要素は特定の記号で表記されます.{}カッコはオブジェクトを表す[]カッコは配列を表す「」カッコは属性または値です.コロンは後者が前者の値(文字列、数値、または別の配列またはオブジェクト)のケース1です.
ケース2:
JSONはXMLに取って代わるデータ構造であり、xmlに比べてコンパクトだが記述能力は悪くない.コンパクトであるため、ネットワーク伝送データはより多くのトラフィックを減少させ、速度を速める.JSONは文字列ですが、要素は特定の記号で表記されます.{}カッコはオブジェクトを表す[]カッコは配列を表す「」カッコは属性または値です.コロンは後者が前者の値(文字列、数値、または別の配列またはオブジェクト)のケース1です.
{
"translation": [
" "
],
"basic": {
"us-phonetic": "lʌv",
"phonetic": "lʌv",
"uk-phonetic": "lʌv",
"explains": [
"n. ; ; ; ",
"vt. ; ; ",
"vi. ",
"n. (Love) ;( ) "
]
},
"web": [
{
"value": [
" ",
" ",
" "
],
"key": "Love"
},
{
"value": [
" ",
" ",
" "
],
"key": "Endless Love"
},
{
"value": [
" ",
" ",
" "
],
"key": "puppy love"
}
]
}
JSONObject str = JSONObject.fromObject(st);
if(str.has("translation")){
JSONArray tr = str.getJSONArray("translation"); //translation json
for(int i = 0 ;i<tr.size();i++){ //
System.out.println(tr.getString(i)); // String getString(index)
}
}
//basic
if(str.has("basic")){
JSONObject us = str.getJSONObject("basic"); // ,
System.out.print(" :[" + us.getString("us-phonetic") + "]\t");
JSONObject uk = str.getJSONObject("basic");
System.out.print(" :[" + us.getString("uk-phonetic") + "]
");
JSONObject basic = str.getJSONObject("basic"); // basic
JSONArray explain = basic.getJSONArray("explains"); // basic explains
for(int i = 0;i<explain.size(); i++){ //
System.out.println(explain.getString(i));
}
}
ケース2:
[
{
"ver": "20200624",
"model": "M86",
"size": "81977",
"md5": "",
"url": "http://static.ococm.com/8386/sugarcane-ota-TVOS-02.04.03.20200624.zip"
},
{
"ver": "20200624",
"model": "M76",
"size": "81977",
"md5": "",
"url": "http://static.ococm.com/8386/sugarcane-ota20200624.zip"
},
{
"ver": "20200624",
"model": "M96",
"size": "81977",
"md5": "",
"url": "http://static.ococm.com/8386/sugarcane-ota-20200624.zip"
}
]
JSONArray jsonArray = new JSONArray(str);
for(int i=0;i<jsonArray.length();i++){
JSONObject jsonObject = (JSONObject)jsonArray.get(i);
String model = jsonObject.getString("model");
if(model.equals("M86")){
mVersionInfo.setVersion(jsonObject.getString("ver"));
mVersionInfo.setUrl(jsonObject.getString("url"));
mVersionInfo.setSize(jsonObject.getLong("size"));
mVersionInfo.setMd5(jsonObject.getString("md5"));
break;
}
}