在Java中,我們通常使用第三方庫(kù)來(lái)解析 JSON 數(shù)據(jù)。常用的庫(kù)有兩個(gè):org.json 和 com.google.gson。無(wú)論使用哪一個(gè)庫(kù),JSON 字符串中的反斜杠需要進(jìn)行轉(zhuǎn)義,否則會(huì)拋出異常。
在 org.json 庫(kù)中,需要使用 json.org 包下的 JSONObject 和 JSONArray 類來(lái)解析 JSON 數(shù)據(jù)。在使用 JSONObject 對(duì)象解析 JSON 數(shù)據(jù)時(shí),需要通過(guò) get() 方法獲取 JSON 值,而轉(zhuǎn)義的反斜杠在 get() 方法中應(yīng)該寫(xiě)成 \\\\,代碼如下:
JSONObject json = new JSONObject("{\"name\":\"John\\Doe\"}"); String name = json.getString("name"); //解析 JSON 值
在 com.google.gson 庫(kù)中,需要使用 com.google.gson 包下的 JsonObject 和 JsonArray 類來(lái)解析 JSON 數(shù)據(jù)。轉(zhuǎn)義的反斜杠在處理 JSON 字符串時(shí)應(yīng)該寫(xiě)成 \\\\\\\\/,代碼如下:
JsonObject json = new JsonParser().parse("{\"name\":\"John\\\\\\/Doe\"}").getAsJsonObject(); String name = json.get("name").getAsString(); //解析 JSON 值
下一篇docker好用不