簡體   English   中英

在Rapidjson上,僅編碼數字以字符串然后解碼

[英]on rapidjson, encode just a number to string then decode it

使用rapidjson ,如何將數字編碼為json格式? 我有123.321,我想將其轉換為“ 123.321”,然后將其保存在文件中。 以后使用json將其轉換回123.321。 我不想使用另存為“ {” tag“:” value“}”之類的文檔,我希望將其保存為“ value”,然后再轉換回去。

我有以下代碼將數字轉換為“數字”:

Value v(123);
StringBuffer mybuffer;
Writer<StringBuffer> mywriter(mybuffer);
v.Accept(mywriter);
const char* myjson = mybuffer.GetString();

如何將其轉換回去? 以下解決方案? 我不想使用處理程序!

Reader reader;           
StringStream ss(myjson); 
reader.Parse(ss, handler);

感謝您的幫助。

我剛進入Google后才找到答案:

使用Rapidjson將數字編碼為json:

Value v(123.321);
StringBuffer mybuffer;
Writer<StringBuffer> mywriter(mybuffer);
v.Accept(mywriter);
const char* myjson = mybuffer.GetString();

現在, myjson的值為 “ 123.321”。 然后將myjson解碼為數字:

Document d;
d.Parse(myjson); // myjson is "123.321"
assert(d.IsNumber());
value = d.GetDouble(); // now the value is 123.321

盡可能簡單。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM