Java 多層嵌套JSON類型數據解析,取出指定的字符串

原文鏈接:https://blog.csdn.net/tyt1002/article/details/100839075

原諒我找不到原文的鏈接 

簡單來說:
“key”:“value” --> String
“key”:{“k1”:“v1”} --> JSONObject
“key”:[v] --> JSONArray
數據結構:

{
    "error": 0,
    "status": "success",
    "results": [
        {
            "currentCity": "青島",
            "index": [
                {
                    "title": "穿衣",
                    "zs": "較冷",
                    "tipt": "穿衣指數",
                    "des": "建議着厚外套加毛衣等服裝。年老體弱者宜着大衣、呢外套加羊毛衫。"
                },
                {
                    "title": "紫外線強度",
                    "zs": "中等",
                    "tipt": "紫外線強度指數",
                    "des": "屬中等強度紫外線輻射天氣,外出時建議塗擦SPF高於15、PA+的防曬護膚品,戴帽子、太陽鏡。"
                }
            ]

        }
    ]
}
public class Test {

public static void main(String[] args) {

    String s = "{\"error\":0,\"status\":\"success\",\"results\":[{\"currentCity\":\"青島\",\"index\":[{\"title\":\"穿衣\",\"zs\":\"較冷\",\"tipt\":\"穿衣指數\",\"des\":\"建議着厚外套加毛衣等服裝。年老體弱者宜着大衣、呢外套加羊毛衫。\"},{\"title\":\"紫外線強度\",\"zs\":\"最弱\",\"tipt\":\"紫外線強度指數\",\"des\":\"屬弱紫外線輻射天氣,無需特別防護。若長期在戶外,建議塗擦SPF在8-12之間的防曬護膚品。\"}],}]}";

    JSONObject jsonObject = JSONObject.fromObject(s);

    //提取出error爲 0
    int error = jsonObject.getInt("error");
    System.out.println("error:" + error);

    //提取出status爲 success
    String status = jsonObject.getString("status");
    System.out.println("status:" + status);    

    //注意:results中的內容帶有中括號[],所以要轉化爲JSONArray類型的對象
    JSONArray result = jsonObject.getJSONArray("results");

    for (int i = 0; i < result.size(); i++) {
        //提取出currentCity爲 青島
        String currentCity = result.getJSONObject(i).getString("currentCity");
        System.out.println("currentCity:" + currentCity);

        //注意:index中的內容帶有中括號[],所以要轉化爲JSONArray類型的對象
        JSONArray index = result.getJSONObject(i).getJSONArray("index");

        for (int j = 0; j < index.size(); j++) {
            String title = index.getJSONObject(j).getString("title");
            System.out.println("title:" + title);
            String zs = index.getJSONObject(j).getString("zs");
            System.out.println("zs:" + zs);
            String tipt = index.getJSONObject(j).getString("tipt");
            System.out.println("tipt:" + tipt);
            String des = index.getJSONObject(j).getString("des");
            System.out.println("des:" + des);
        }
    }
}
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章