问题标签 [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.

0 投票
1 回答
2085 浏览

c++ - 将 Vector 转换为 QJsonArray 的最快方法?

目前,我正在遍历一个向量以将其转换为 QJsonArray:

但是,这会导致我的程序出现小滞后峰值。是否有另一种方法来接收来自向量的数据的 QJsonArray?(它不需要是深拷贝。)

0 投票
2 回答
289 浏览

qt - 在 Qt 中从 QJsonArray 构造 QString

在尝试QString从 a 的值构造 a 时QJsonArray,我收到以下错误:

error: passing 'const QString' as 'this' argument discards qualifiers [-fpermissive].

不知道我在这段代码中哪里弄错了:

0 投票
1 回答
2862 浏览

c++ - 在 QJsonArray 中附加 QJsonObjects

我正在尝试创建一个 json 文件,在其中我将 QjsonObjects 插入只有一个 QJsonArray 中,我得到的是每个 QjsonObject 都在一个独立的 QJsonArray 中,但我希望它们位于同一个数组中。

每次单击保存按钮时都会调用此函数,这就是我的 QJsonObjects 的创建方式。

这是生成的 json 文件的示例:

我试图让它看起来像这样:

0 投票
2 回答
1014 浏览

c++ - QJsonDocument::toJson() 双精度不正确

在我的项目中,我从一个 json 文件中读取QJsonDocument::fromJson(). 这很好用,但是当我尝试QJsonDocument用一​​些双打写回文件时toJson(),精度已经搞砸了。

例如,调用具有 double 值的toJson()a 的文档将另存为. 我不想要这个。QJsonValue0.150.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 源代码。

手指交叉有人对此有一个神奇的解决方法:)

0 投票
1 回答
433 浏览

json - 从Qvariant转换时QJsonDocument给出null?

qdebug 返回QJsonDocument({"variant":null}) 我认为它应该返回 object1 的值,但它返回 null。为什么会这样?我想使用 qt 在 json 中配对字符串和一个类。我该怎么做

0 投票
1 回答
2342 浏览

c++ - 如何修改 QJsonObject

我可以在简单的 json 文件中以这种方式为对象设置值。

Qt代码:

简单的json文件:

所以这段代码将性别的值更改为女性。

但是当我使用更大的 json 时,其中有“对象下的对象”

更新:

我无法修改该值。有没有一些简单的方法可以做到这一点?我一直在努力寻找解决方案,但没有成功!

0 投票
1 回答
659 浏览

c++ - 将 JSON 文本文件转换回 QJsonArray

我有一个对象,我使用下面的代码将其序列化为 JSON(另请参见结构):

此代码将其转换为 json 文本文件:

这一切正常并生成 json 文件......它看起来像这样(前几行):

现在,我需要做相反的事情......但我的 json 对象大小始终为 0!问题是什么?

0 投票
1 回答
158 浏览

c++ - Qt Json解析c ++

我正在尝试从 api 解析 QT 中的 json 对象。但是,当我尝试下面编写的代码时,我无法解析对象。我只是想获取存储在这些参数中的信息。

API 是

代码是

响应字符串看起来

输出是

邮递员形象

0 投票
1 回答
650 浏览

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?

0 投票
1 回答
1116 浏览

c++ - 如何将多个 QJsonObject 添加到 QJsonDocument - Qt

我想将多个 QJsonObject 而不是 QJsonArray 添加到 QJsonDocument。这可能吗?它应该如下所示:

我已经提到了这个,但我不想使用JsonArray. 只想用JsonObject。我在这里也参考了更多答案,但力求找到任何解决方案。

我试过这个:

输出