json 带斜杠时如何解析

比如像这样的JSON:

{
"result":
    "{
        \"RFM_12_var6\":\"17\",
        \"RFM_12_var50\":\"19\",
        \"RFM_12_var20\":\"5950.0\",
        \"rsk_score\":\"856\",
        \"FLAG_6_var4\":\"1\",
        \"FLAG_6_var1\":\"3\",
        \"dc_flag\":\"debit\",
        \"MON_12_var1\":\"12\",
        \"crb_score\":\"0.012552760953\",
        \"cnp_score\":\"6\",
        \"MON_3_var1\":\"3\",
        \"RFM_12_var44\":\"6281.0\",
        \"RFM_12_var40\":\"0.0\",

    }",
"status":"0",
"value":"查询成功"
}

斜杠“\”是为了让后面的引号显示出来,解析式不必在意这个斜杠。这个json result后面的”{…}”这是一个字符串,而不是json对象。以往的话,是这样的:

{
"result":
    {
    "swift_number":"100032_20160127091434_7510",
    "Flag":
    {"specialList_c":"1"},
    "SpecialList_c":
    {
        "id":{"bank_lost":"0"},
        "cell":{},
        "gid":{}
    },
    "code":"00"
    },
"status":"0",
"value":"查询成功"
}

可以看出resullt后面的是 {。。。},而不是“{。。。}” 后面这个例子可以按照json对象处理。
而上面那个需要先把字符串转化为json对象,是这样处理的:
比如要想得到RFM_12_var6 的值

String o = json.getString( "result");
JSONObject object = JSONObject.parseObject(o)
String s = object.getString("RFM_12_var50" );//这样就可以得到RFM_12_var6的值

你可能感兴趣的:(json解析)