gpt4 book ai didi

c++ - 在 rapidjson 解析中获取 double 值的原始字符串(或字节)?

转载 作者:太空宇宙 更新时间:2023-11-04 11:25:06 27 4
gpt4 key购买 nike

有没有办法在使用 rapidjson 解析 json 时获取 double 值的底层字节。

看下面的代码:

string temp_json2 = "{\"byte_size\":1000.3}";
rapidjson::Document doc;
doc.Parse<0>(temp_json2.c_str());

rapidjson::Value::ConstMemberIterator iter = doc.MemberBegin();

const rapidjson::Value& key = iter->name;
std::cout << key.GetString() << " = ";

const rapidjson::Value& val = iter->value;
std::cout << val.GetDouble();

我想得到类似的东西

val.GetRawString();而不是 val.GetDouble();

我需要这个的原因是我不想在转换过程中丢失任何精度。请注意,我没有选择修改 json 以在 double 值周围加上引号。

最佳答案

看起来有可能:

{
"hash": "00000000206d413bdd4d020a7df959176440e7b52f120f3416db11cb26aaaa8f",
"bigint": 13671375398414879143589706241811147679151753447299444772946167816777,
"time": "1551597576",
"special": false
}
rapidjson::Document document;
document.Parse<rapidjson::kParseNumbersAsStringsFlag>( JSONmessage );

std::cout << document["hash"].GetString() << std::endl;
std::cout << document["bigint"].GetString() << std::endl;

来源:https://github.com/Tencent/rapidjson/issues/1458

关于c++ - 在 rapidjson 解析中获取 double 值的原始字符串(或字节)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26937665/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com