如何正确解析JSON字符串(Android)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liuzehn/article/details/89184427

使用java语句如何正确解析json字符串,举一个例子,我们从rtc_info字符串中解析出参数token,最简单的做法:

String info = jsonObj.getString("rtc_info");
JSONObject jObj = new JSONObject(info);
token = jObj.getString("token");

稍微有经验的人会这样写,这是一种以防万一的做法:

try {    
    String info = jsonObj.getString("rtc_info");
    JSONObject jObj = new JSONObject(info);
    token = jObj.getString("token");
} catch (JSONException e) {
    e.printStackTrace();
}

但方法二也是存在缺陷的,其实更好的写法是这样,在解析一个参数之前,应该先判断它是否存在:

try {    
    String info = jsonObj.getString("rtc_info");
    JSONObject jObj = new JSONObject(info);
    if (!jObj.has("token")) {
        showToast("Failed to got token!");
        return;
    } else {
        token = jObj.getString("token");
    }
} catch (JSONException e) {
    e.printStackTrace();
}

除了上述的方法,当然还有更好的写法,这里只是简单阐述一个道理:尽可能追求完美的代码!

猜你喜欢

转载自blog.csdn.net/liuzehn/article/details/89184427