当前位置: 首页 > 网络知识

Qt QJsonValue

时间:2026-01-27 08:40:04

0、说明

QJsonValue类用于操作JSON中的各种数据。

JSON是用于存储结构化数据的格式,JSON中的数据可以是六种类型:

基本类型

存储类型

bool QJsonValue::Bool
double QJsonValue::Double
string QJsonValue::String
array QJsonValue::Array
object QJsonValue::Object
null QJsonValue::Null

这六种类型就能代表任何程序中的类型了。除此之外,QJsonValue还有一个特殊的标签用于指代未定义变量,通过isUndefined()查看这个标签。

值的类型通过type()查看,或者直接用isBool()、isString()、...进行判断。同时,JSON中的值通过toBool()、toString()、...转化为程序中的类型。

数值类型是内部严格对应的,不同于QVariant,QJsonValue并不会做隐含的强制转型。这意味着转换一个不存在于Value的类型会返回一个默认类型的Value。

1、模块和载入项

Header #include<QJsonValue>
qmake QT += core
Since Qt 5.0

2、构造

QJsonValue(QJsonValueother)
QJsonValue(QJsonObjecto)
QJsonValue(QJsonArraya)

QJsonValue(vars)

var可以是char、QString、qint64、double、bool

3、静态方法

QJsonValue frVariant(QVariant variant)

4、实例方法

返回值类型

方法

说明

QJsonValue &

bool

bool

QJsonValue

QJsonValue

operator=(QJsonValueother)

operator!=(QJsonValueother)

operator==(QJsonValueother)

operator[](QStringkey)

operator[](inti)

赋值

判断是否不等

判断是否相等

可以用 [i]的方式提取元素

bool

isArray()

isBool()

isDouble()

isNull()

isObject()

isString()

isUndefined()

类型判断
void swap(QJsonValue &other) 交换两个QJsonValue的值
QJsonArray

toArray(QJsonArraydefaultValue)

toArray()

QJsonValue转换为QJsonArray

bool

double

int

QJsonObject

QJsonObject

QString

QString

QVariant

toBool(booldefaultValue= false)

toDouble(doubledefaultValue= 0)

toInt(intdefaultValue= 0)

toObject(QJsonObjectdefaultValue)

toObject()

toString()

toString(QStringdefaultValue)

toVariant()

QJsonValue转换为指定类型
QJsonValue::Type type() QJsonValue中数据的类型


上一篇:SimpleITK 读取医学影像文件
下一篇:ITK 基于C++和ITK获取3D医学图像的最大连通区域
Qt
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素