使用 rapidjson ,如何将数字编码为json格式?我有123.321,我想将其转换为" 123.321",然后将其保存在文件中。后来使用json将其转换回123.321。 我不想使用像#" {" tag":" value"}"这样保存的文档,我希望将其另存为a"值"然后转换回来。
我有以下代码将数字转换为"数字":
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);
感谢即将到来的帮助。
答案 0 :(得分:2)
我在挖掘谷歌后才找到答案:
使用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
尽可能简单。