JSON 數(shù)據(jù)格式介紹
這篇文章講的比較深入,所以不用我畫蛇添足了,只是下面這段代碼很好的演示了JSON如何處理字符串?dāng)?shù)據(jù),保存下來備查:
zt from:https://www.ibm.com/developerworks/cn/web/wa-lo-json/
將 String 對(duì)象編碼為 JSON 格式時(shí),只需處理好特殊字符即可。另外,必須用 (") 而非 (') 表示字符串:
static String string2Json(String s) {
StringBuilder sb = new StringBuilder(s.length()+20);
sb.append('\"');
for (int i=0; i<s.length(); i++) {
char c = s.charAt(i);
switch (c) {
case '\"':
sb.append("\\\"");
break;
case '\\':
sb.append("\\\\");
break;
case '/':
sb.append("\\/");
break;
case '\b':
sb.append("\\b");
break;
case '\f':
sb.append("\\f");
break;
case '\n':
sb.append("\\n");
break;
case '\r':
sb.append("\\r");
break;
case '\t':
sb.append("\\t");
break;
default:
sb.append(c);
}
}
sb.append('\"');
return sb.toString();
}
2,在PHP中的應(yīng)用。
PHP中使用json_encode和json_decode來進(jìn)行JSON封裝和拆裝。
封裝string類型數(shù)據(jù):json_encode在輸出結(jié)果中,會(huì)在源字符串兩端加上("),如對(duì)象內(nèi)容是(abc),結(jié)果是("abc”)
封裝stdClass對(duì)象類型數(shù)據(jù):比如有個(gè)"value”成員內(nèi)容是字符串,結(jié)果是:{"value":"\u5e7f\u4e1c\u4f53\u80b2,CCTV5"}
3,為什么要寫這個(gè)。
ZenTaoPHP框架中,請(qǐng)求類型如果是“json”,輸出結(jié)果會(huì)以JSON格式封裝,但在對(duì)輸出信息進(jìn)行分析時(shí),發(fā)現(xiàn)并非標(biāo)準(zhǔn)的JSON格式。
深究后,發(fā)現(xiàn)ZenTaoPHP對(duì)一部分?jǐn)?shù)據(jù)進(jìn)行了二次JSON封裝,輸出類似:"{\"value\":\"\\u5e7f\\u4e1c\\u4f53\"}" 這樣的結(jié)果。
相關(guān)文章
快速解決處理后臺(tái)返回json數(shù)據(jù)格式的問題
今天小編就為大家分享一篇快速解決處理后臺(tái)返回json數(shù)據(jù)格式的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-08-08淺談JSON中stringify 函數(shù)、toJosn函數(shù)和parse函數(shù)
這篇文章主要介紹了淺談JSON中stringify 函數(shù)、toJosn函數(shù)和parse函數(shù),需要的朋友可以參考下2015-01-01詳解JSON1:使用TSQL查詢數(shù)據(jù)和更新JSON數(shù)據(jù)
這篇文章主要介紹了使用TSQL查詢數(shù)據(jù)和更新JSON數(shù)據(jù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-11-11javascript操作JSON的要領(lǐng)總結(jié)
JSON是 JavaScript 原生格式,這意味著在 JavaScript 中處理 JSON數(shù)據(jù)不須要任何特殊的 API 或工具包,需要的朋友可以了解下2012-12-12js解析與序列化json數(shù)據(jù)(三)json的解析探討
這一節(jié)我們主要討論json的解析,感興趣的朋友可以了解下,JSON.parse()方法也可以接收另一個(gè)參數(shù),該參數(shù)是一個(gè)函數(shù),將早每個(gè)鍵值對(duì)上調(diào)用,好了,話不多說,希望本文對(duì)你有所幫助2013-02-02JSON.stringify 語(yǔ)法實(shí)例講解
可能有些人對(duì)系列化這個(gè)詞過敏,我的理解很簡(jiǎn)單。就是說把原來是對(duì)象的類型轉(zhuǎn)換成字符串類型(或者更確切的說是json類型的)。就這么簡(jiǎn)單。打個(gè)比方說,你有一個(gè)類,那么你可以通過這個(gè)方法轉(zhuǎn)換成相應(yīng)的json類型的2012-03-03js解析與序列化json數(shù)據(jù)(一)json.stringify()的基本用法
對(duì)象有兩個(gè)方法:stringify()和parse()。在最簡(jiǎn)單的情況下,這兩個(gè)方法分別用于把JavaScript對(duì)象序列化為JSON字符串和把JSON字符串解析為原生JavaScript2013-02-02nodejs教程 安裝express及配置app.js文件的詳細(xì)步驟
express.js是nodejs的一個(gè)MVC開發(fā)框架,并且支持jade等多種模板。下面簡(jiǎn)單來說說express的安裝和app.js文件的配置,然后在今后的教程中一步一步使用express.js搭建個(gè)聊天室2013-05-05