c++哪個json序列化庫好?
c++的那個json序列化庫好?要無bug,易用的。效率不需要考慮
jsoncpp有坑 慎用,rapidjson不錯 公司都在用
最後其實我自己實現了一個
https://github.com/USCiLab/cereal
之前寫項目一直用的是 jsoncpp ,用起來還好,但是 parseFromStream 這個函數不知道為什麼沒有 namespace ,有潔癖的話慎用。。。
今天看到了 nlohmann/json,感覺挺友好的,而且 Github 搜 "json" 排名第一,,最近打算試試這個。。。
Tencent/rapidjson 是國產的(維護者 @Milo Yip),貌似效率很高?但是看用法感覺用起來可能不是很舒服。。。
jsoncons
當年我也跟你一樣迷惑,然後我就選擇了幹掉迷惑:自己寫了一個,介面仿java提供的json代碼。
rapidjson雖然難用點,做一個二次包裝還好吧。
本來在評論區的,還是來補一下吧。
既然題主對速度沒有要求,為何不自己寫一個呢?最多一天時間就能寫一個能用的了,怎麼都比提個問題花一天時間來問要強。
如果怕實現的正確性有問題,這裡有相對完善的測試樣例:https://github.com/MichaelSuen-thePointer/SimpleJSON/blob/master/SimpleJSON/main.cpp,都過了的話至少能用了。
個人覺得RapidJson超難用,介面很不Cpp風格,太過複雜,我自己用還要包裝一層才能和其他代碼共存,超麻煩
推薦用Boost庫里的property_tree,這個模塊是header only的,轉用xml也是改一行的事情
另外引入Boost也有其他工具可以用,比如我常用的serialization/graph/algorithm/regex/lexical_cast/filesystem/asio之類的推薦閱讀:
※為什麼使用gcc編譯代碼後局部數組變數的初始值消失了?
※C++自學用書推薦?
※C++ 「==」運算符取值問題?
※C 語言的內存管理如何比 C++ 的 RAII 靠譜?