你最喜歡用的JSON解析庫有哪些?


比較過 20 個原生(C/C++)的 JSON 庫 miloyip/nativejson-benchmark · GitHub 後,解析/生成的正確性、速度、內存用量幾乎都是 RapidJSON 完勝,就是代碼體積稍大一點。RapidJSON 還是全頭文件不用編譯成庫,而且能用模板形式擴展。缺點也許就是介面稍難用一點,但新的 JSON Pointer API 可改善。


題目標註有Android……那俺就說說自己的一點點使用經驗。

開始項目中使用的是fastjson,而且作者也說比gson快6倍,甚至嘲諷gson的g代表了「龜速」的意思,可是我自己的簡單測試是,比較簡陋的測試,一個10萬條數據的json文件,gson比fastjson快一些,快了大概80%的樣子。雖然測試可能不科學,但數據確實是我們項目中的實際數據,所以……

另外,也許是我使用真的有問題?使用的新版本的fastjson性能反而比舊的要低很多(1.2.7,1.1.44-android,1.1.33-android裡面,1.1.33反而是最快的)。

然而,最終我選擇了logan square,它的速度比fastjson快了2-3倍(自測),嗯,推薦Android開發者們使用Logan Square。


如果你不介意性能上打些折扣(相比大多數其他 JSON 庫),jsonxx 還是很不錯的,非常友好的 API,簡單方便!


Gson不如我廠造的fastjson alibaba/fastjson · GitHub

比Gson至少快6倍,阿里的fastjson是目前java語言中最快的json庫,比自稱最快的jackson速度要快,第三方獨立(不是zealer測得 XD)測試結果看這裡:Staging Results · eishay/jvm-serializers Wiki · GitHub 。

自行做性能測試時,關閉循環引用檢測的功能。

這裡有jackson作者cowtowncoder等人對fastjson的性能評價:Google 網上論壇


Gson,谷歌出品


cpp推薦rapidJSON.速度快又好,作者@Milo Yip又是知乎大神,熱心友善,有問題絕對有保證。


jackson,最喜歡的在線JSON工具:JSON在線解析


為什麼阿里官方給出的gson和fastjson的比較測試結果和很多網友的大相徑庭,阿里能不能給出相關的測試案例和數據?


Unity C#腳本用過LitJson,就覺得方便


jackson


jansson


推薦閱讀:

如何優雅地使用 Nexus 5?
有沒有可能 Google 把 Nexus 交給小米來做?
打算做一款 Android APP,想了解一些移動開發中伺服器端開發的技術,如果用python開發採用哪個框架及相應的技術?
如何判斷Android設備是真機還是模擬器?
Windows Phone 和 Android 手機哪個更適合父母使用?

TAG:JSON | Android | jackson編程 |