天天看點

jsoncpp中json字元串的格式化及非格式化轉換

之前搞jsoncpp解析時,在将一個json數組整體指派給一個string變量時,當時調用的是

string strData = root[“LaserData”].asString();

但是結果不理想,裡面存的都是整型資料。根據需要,找了半天發現了一位老哥寫的jsoncpp有兩種處理串的方法如下:

1. toStyledString()
2. FastWriter中的write()
           

具體用法如下:

Json::Value root;

…//root中寫入資料

//方法一:轉為格式化字元串,裡面加了很多空格及換行符

string strJson1 = root.toStyledString();

//方法二:轉為未格式化字元串,無多餘空格及換行符

Json::FastWriter writer;

string strJson1 = writer.write(root);

第一種轉化後寫入檔案資料是每個一行(有換行符);第二種轉化後寫入檔案資料時一行顯示。

另,想要string串中的單個字元替換為另一種字元的,傳送門在這:點這裡

繼續閱讀