问题标签 [qjson]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 将 Vector 转换为 QJsonArray 的最快方法?
目前,我正在遍历一个向量以将其转换为 QJsonArray:
但是,这会导致我的程序出现小滞后峰值。是否有另一种方法来接收来自向量的数据的 QJsonArray?(它不需要是深拷贝。)
qt - 在 Qt 中从 QJsonArray 构造 QString
在尝试QString
从 a 的值构造 a 时QJsonArray
,我收到以下错误:
error: passing 'const QString' as 'this' argument discards qualifiers [-fpermissive]
.
不知道我在这段代码中哪里弄错了:
c++ - 在 QJsonArray 中附加 QJsonObjects
我正在尝试创建一个 json 文件,在其中我将 QjsonObjects 插入只有一个 QJsonArray 中,我得到的是每个 QjsonObject 都在一个独立的 QJsonArray 中,但我希望它们位于同一个数组中。
每次单击保存按钮时都会调用此函数,这就是我的 QJsonObjects 的创建方式。
这是生成的 json 文件的示例:
我试图让它看起来像这样:
c++ - QJsonDocument::toJson() 双精度不正确
在我的项目中,我从一个 json 文件中读取QJsonDocument::fromJson()
. 这很好用,但是当我尝试QJsonDocument
用一些双打写回文件时toJson()
,精度已经搞砸了。
例如,调用具有 double 值的toJson()
a 的文档将另存为. 我不想要这个。QJsonValue
0.15
0.14999999999999999
这是因为 Qt 源文件qjsonwriter.cpp at line 126 (Qt 5.6.2)
读取:
最后那个+2把我弄乱了。如果这个相同的调用QByteArray::number()
的精度为 15(而不是 17),则结果完全符合我的需要0.15
...。
我了解浮点精度的格式如何导致双精度限制它可以表示的内容。但是,如果我将精度限制为 15 而不是 17,这将具有匹配输入双精度的效果,这是我想要的。
我怎样才能解决这个问题?
显然......我可以编写自己的 Json 解析器,但这是最后的手段。显然我可以编辑 Qt 源代码,但是我的软件已经部署了 Qt5Core.dll,包含在每个人的安装目录中,而且我的更新程序并非旨在更新任何 dll。所以我无法编辑 Qt 源代码。
手指交叉有人对此有一个神奇的解决方法:)
json - 从Qvariant转换时QJsonDocument给出null?
qdebug 返回QJsonDocument({"variant":null})
我认为它应该返回 object1 的值,但它返回 null。为什么会这样?我想使用 qt 在 json 中配对字符串和一个类。我该怎么做
c++ - 如何修改 QJsonObject
我可以在简单的 json 文件中以这种方式为对象设置值。
Qt代码:
简单的json文件:
所以这段代码将性别的值更改为女性。
但是当我使用更大的 json 时,其中有“对象下的对象”
更新:
我无法修改该值。有没有一些简单的方法可以做到这一点?我一直在努力寻找解决方案,但没有成功!
c++ - 将 JSON 文本文件转换回 QJsonArray
我有一个对象,我使用下面的代码将其序列化为 JSON(另请参见结构):
此代码将其转换为 json 文本文件:
这一切正常并生成 json 文件......它看起来像这样(前几行):
现在,我需要做相反的事情......但我的 json 对象大小始终为 0!问题是什么?
c++ - Qt Json解析c ++
我正在尝试从 api 解析 QT 中的 json 对象。但是,当我尝试下面编写的代码时,我无法解析对象。我只是想获取存储在这些参数中的信息。
API 是
代码是
响应字符串看起来
输出是
邮递员形象
qt - Accessing combo box data model
I'm sending a QJsonArray
from C++ to QML combo box:
netlib.h
#xA;netlib.cpp
#xA;*.qml
#xA;The sample QJsonArray
is
QJsonArray([{"ip":"10.10.2.22","name":"N 0","port":4000,"profiles_array":[{"config":"0 blah blah blah","id":0,"name":"Profile 0-0"},{"config":"1 blah blah blah","id":1,"name":"Profile 0-1"},{"config":"2 blah blah blah","id":2,"name":"Profile 0-2"}]},{"ip":"192.168.1.1","name":"N 1","port":4001,"profiles_array":[{"config":"0 blah blah blah","id":0,"name":"Profile 1-0"},{"config":"1 blah blah blah","id":1,"name":"Profile 1-1"},{"config":"2 blah blah blah","id":2,"name":"Profile 1-2"}]},{"ip":"172.16.1.1","name":"N 2","port":4003,"profiles_array":[{"config":"0 blah blah blah","id":0,"name":"Profile 2-0"},{"config":"1 blah blah blah","id":1,"name":"Profile 2-1"},{"config":"2 blah blah blah","id":2,"name":"Profile 2-2"}]}])
How can I access key/values of ComboBox model QJsonArray
from within the TextArea
on my QML code?
c++ - 如何将多个 QJsonObject 添加到 QJsonDocument - Qt
我想将多个 QJsonObject 而不是 QJsonArray 添加到 QJsonDocument。这可能吗?它应该如下所示:
我已经提到了这个,但我不想使用JsonArray
. 只想用JsonObject
。我在这里也参考了更多答案,但力求找到任何解决方案。
我试过这个:
输出