gpt4 book ai didi

c++ - Qt : from unsigned long long to QJsonObject

转载 作者:行者123 更新时间:2023-11-30 01:46:54 32 4
gpt4 key购买 nike

是否可以使用 long long 作为 QJsonObject 的值?我被迫将我的 API 从 JSON 更改为 XML,因为我得到的 1 个字段有 BigInt 值,显然我无法从中提取大数字QJsonValue

这是我的和平代码,可以显示正在发生的事情:

QJsonObject json;

unsigned long long ulongmax = ULONG_LONG_MAX;

QVariant variant = ulongmax;

qDebug() << variant;
qDebug() << ulongmax;

json.insert( "key", QJsonValue::fromVariant( variant ) );

unsigned long long json_value = json.value("key").toVariant().toULongLong();

qDebug() << json_value;

输出:

QVariant(qulonglong, 18446744073709551615)
18446744073709551615
9223372036854775808

期望的输出:

QVariant(qulonglong, 18446744073709551615)
18446744073709551615
18446744073709551615

我做错了什么吗?任何人都可以帮助我找出如何在没有外部库的情况下使其正常工作吗?谢谢!

最佳答案

我对这个问题的解决方案很简单,就是写 JSON 字符串而不是 JSON 数字:

检查转换中的错误可能是有意义的,请参阅所提供链接的 API 文档。

一个潜在的问题是 JSON 中的数字不需要引号。因此,您可能必须先转换 JSON 文件以符合此字符串约定。

关于c++ - Qt : from unsigned long long to QJsonObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32446189/

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