- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试解析以下 JSON 数据(使用 JSON.stringify 创建)。我正在使用 libJSON 7。我的代码如下:
wstring jsonstr = _T("{\"Id\":0,\"Note\":\"\",\"Username\":\"user\",\"Password\":\"pass\",\"Enabled\":true,\"ProfileId\":\"\",\"UserAgent\":\"\",\"LastUsage\":0,\"Failures\":0,\"Abuses\":0}");
JSONNode jsondata = libjson::parse(jsonstr);
auto i = jsondata.begin();
auto num = i->as_float();
int idIsNan = _isnan(num);// Nonzero here
现在我期望 num == (double)0,但是,它等于 1.#QNAN00000000000。有谁知道如何绕过这个错误?另外,如果我使用 as_int 而不是 as_float,它会正确解析数据;所以,这个错误似乎只发生在 as_float 方法中。
最佳答案
我在这里猜测一下,因为您没有显示所有相关代码:
你的json结构是data
,json
似乎是你正在解析的字符串。因此 json.begin() 将是该字符串中的第一个字符,而不是第一个 json 值。由于第一个字符是双引号,因此它不能被解析为 float -> 你会得到你所看到的废话。也许这就是您想要的:
JSONNode data = libjson::parse(json);
auto i = data.begin(); //<-- data, not json!
auto num = i->as_float();
请记住下次提供所有相关代码,其中包括所有使用的变量的定义(在本例中为“json”)。
PS:您发布的 json 字符串以不匹配的 }
结尾 - 这可能会使解析器感到困惑。
关于c++ - libjson 错误地解析整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14354841/
我从此下载了 C++ libJSON link : 他们建议我将它用作库。如何使用他们提供的代码创建库? 最佳答案 你必须已经安装了 g++ 并在控制台/终端中 make,只需编译它类型 make,它
我正在尝试解析以下 JSON 数据(使用 JSON.stringify 创建)。我正在使用 libJSON 7。我的代码如下: wstring jsonstr = _T("{\"Id\":0,\"No
我正在使用 libJson(C++ 库)来解析 JSON 文件。我的 JSON 文件如下所示。 { "Comany": { "name": "Some Company"
我正在尝试使用 cmake 将 jsoncpp ( lib_json ) 与 c++ 项目链接起来。它在一台计算机上运行良好,但在另一台计算机上(具有几乎相同的配置)我在执行我的应用程序时遇到错误:
我想用 libJSON 的 JSONNode 创建一个数组。我尝试了以下方法,但它不起作用: JSONNode array; JSONNode foo("word", "foo"); JSONNode
对于这个可能很菜鸟的问题,我提前表示歉意,但在过去几天的查找中,我无法在互联网或 SO 的任何地方找到这个问题的答案。 我正在尝试在 xcode 中创建一个 c++ 项目,我想使用 libjson 来
我在我的 Debian wheezy 7.3 中找到了以下两个 libjson.h: /usr/include/libjson/libjson.h /usr/local/include/libjson
我正在尝试在 C++ 项目中使用 libjson,文档告诉我只需“将 libjson 的源添加到您的项目,在 JSONOptions.h 文件中注释 JSON_LIBRARY,任何 C++ 编译器都应
我是在 Linux 中使用 libjson-c 的新手。我有以下代码: json_object* new_obj = json_tokener_parse("[{\"abc\": \"123\"},
我一直在寻找用于 C++ 的 Json RPC 库,在尝试了几次之后,我找到了 https://github.com/cinemast/libjson-rpc-cpp迄今为止最好的。 它非常适合我的需
我正在尝试在我的 Linux 服务器上安装 libjson-rpc-perl 但遇到错误。谁能指导我正确的方向? 详细信息: 09:04:02 # lsb_release -a LSB Version
我正在尝试使用 json.push_back 调用将 64 位整数数据推送到 JSONNode uint64_t myHigh = 0x10; uint64_t my
我应该添加任何标志来避免这种情况吗? make all-recursivemake[1]: Entering directory '/home/local/ZOHOCORP/vignesh-4691
我根本不知道如何将 libjson 安装为我的 C++ 项目的一部分。我已经通过网上的一切。我将其嵌入到我的项目中。 首先我试过这个 将 libjson 目录移动到我的项目中 注释掉:#define
我下载了 libjson包并将其添加到我的 VS2010 项目文件夹中。我创建了一个名为 checkJson 的新项目并添加了以下代码: #include "../../libjson/libjson
Libjson 的最新版本是 7.6.1,第 239 行的关闭标记存在一个已知问题。修复该问题后,当我尝试从 Visual Studio 2012 转换此项目时,会发生错误: libjson.vcpr
我是一名优秀的程序员,十分优秀!