当前位置: 首页 > article >正文

QJsonObject 类

1.QJsonObject简介

  QJsonObject类封装了一个JSON对象。
  JSON对象是键值对的列表,其中键是唯一的字符串,值由QJsonValue表示。
  QJsonObject可以转换为QVariantMap,也可以从QVariantMap转换。您可以从中查询具有size()、insert()和remove()项的(key,value)对的数量,并使用标准C++迭代器模式对其内容进行迭代。
  QJsonObject是一个隐式共享类,只要不修改数据,它就与创建数据的文档共享数据。

  Header:#include
  qmake: QT += core

公共类型
  Iclass const_iterator
  Iclass iterator
  Itypedef ConstIterator
  Itypedef Iterator
  Itypedef key_type
  Itypedef mapped_type
  Itypedef size_type

公共函数



QJsonObject()
//构造函数

QJsonObject(std::initializer_list<QPair<QString, QJsonValue> > args)
//构造从参数初始化列表初始化的QJsonObject实例。例如:
//QJsonObject object
// {
//    {"property1", 1},
//    {"property2", 2}
// };

QJsonObject(const QJsonObject &other)
//创建其他的复制

QJsonObject(QJsonObject &&other)
//创建其他的复制

~QJsonObject()
//析构函数

QJsonObject::iterator begin()
//返回一个STL样式的迭代器,该迭代器指向对象中的第一个项。

QJsonObject::const_iterator begin() const
//重载函数,返回一个STL样式的迭代器,该迭代器指向对象中的第一个项。

QJsonObject::const_iterator constBegin() const
//返回一个指向对象中第一个项的常量STL样式迭代器。

QJsonObject::const_iterator constEnd() const
//返回一个常量STL样式迭代器,该迭代器指向对象中最后一个项。

QJsonObject::const_iterator constFind(const QString &key) const
//返回一个常量迭代器,该迭代器指向映射中具有键的项。

QJsonObject::const_iterator constFind(QLatin1String key) const
//重载函数,返回一个常量迭代器,该迭代器指向映射中具有键的项。

bool contains(const QString &key) const
//如果对象中包含关键字key,则返回true。

bool contains(QLatin1String key) const
//重载函数,如果对象中包含关键字key,则返回true。

int count() const
//重载函数,与size()相同。

bool empty() const
//提供此功能是为了与STL兼容。它相当于isEmpty(),如果对象为空,则返回true;否则返回false。

QJsonObject::iterator end()
//返回一个STL样式迭代器,该迭代器指向对象中最后一个项。

QJsonObject::const_iterator end() const
//重载函数,返回一个STL样式迭代器,该迭代器指向对象中最后一个项。

QJsonObject::iterator erase(QJsonObject::iterator it)
//从映射中删除迭代器所指向的(键,值)对,并将迭代器返回到映射中的下一个项。

QJsonObject::iterator find(const QString &key)
//返回一个迭代器,该迭代器指向映射中具有主键的项。
//如果映射不包含带key键的项,则函数返回end()

QJsonObject::iterator find(QLatin1String key)
//重载函数。返回一个迭代器,该迭代器指向映射中具有主键的项。

QJsonObject::const_iterator find(const QString &key) const
//重载函数

QJsonObject::const_iterator find(QLatin1String key) const
//重载函数

QJsonObject::iterator insert(const QString &key, const QJsonValue &value)
//插入一个带有键和值的新项目。
//如果已经有一个具有关键字的项,那么该项的值将被替换为值。
//返回一个迭代器,该迭代器指向插入的项。
//如果该值为未定义,则会导致键从对象中移除。然后返回的迭代器将指向end()。

bool isEmpty() const
//如果对象为空,则返回true。这与size()==0相同。

QStringList keys() const
//返回此对象中所有键的列表。
//该列表按字母顺序排列。

int length() const
//这是一个重载函数。
//与size()相同。

void remove(const QString &key)
//从对象中删除主键

int size() const
//返回存储在对象中的(键,值)对的数量。

void swap(QJsonObject &other)
//用此交换其他对象。这个操作非常快速,而且永远不会失败。

QJsonValue take(const QString &key)
//从对象中删除关键值。
//返回包含键引用的值的QJsonValue。如果对象中不包含主键,则返回未定义。

QVariantHash toVariantHash() const
//将此对象转换为QVariantHash。
//返回创建的哈希。

QVariantMap toVariantMap() const
//将此对象转换为QVariantMap。
//返回创建的映射。

QJsonValue value(const QString &key) const
//返回一个QJsonValue对象中主键key对应的值。
//如果主键不存在,则返回未定义。

QJsonValue value(QLatin1String key) const
//重载函数

bool operator!=(const QJsonObject &other) const
//如果other不等于此对象,则返回true。

QJsonObject &operator=(const QJsonObject &other)
//将其他对象指定给此对象。

QJsonObject &operator=(QJsonObject &&other)
//重载函数

bool operator==(const QJsonObject &other) const
//如果other等于此对象,则返回true。

QJsonValue operator[](const QString &key) const
//返回一个对象中主键对应的值。
//这与value()的作用相同。
//如果主键不存在,则返回未定义。

QJsonValue operator[](QLatin1String key) const
//重载函数

QJsonValueRef operator[](const QString &key)
//重载函数

QJsonValueRef operator[](QLatin1String key)
//重载函数

静态公共成员

QJsonObject  fromVariantHash(const QVariantHash &hash)
//将哈希转换为QJsonObject。
//hash中的键将用作JSON对象中的键,QVariant值将转换为JSON值。

QJsonObject  fromVariantMap(const QVariantMap &map)
//将map映射转换为QJsonObject。
//map中的键将用作JSON对象中的键,QVariant值将转换为JSON值。

成员类型文档

typedef QJsonObject::ConstIterator
Qt-style synonym for QJsonObject::const_iterator.

typedef QJsonObject::Iterator
Qt-style synonym for QJsonObject::iterator.

typedef QJsonObject::key_type
Typedef for QString. Provided for STL compatibility.

typedef QJsonObject::mapped_type
Typedef for QJsonValue. Provided for STL compatibility.

typedef QJsonObject::size_type
Typedef for int. Provided for STL compatibility.

http://www.kler.cn/news/18426.html

相关文章:

  • Docker安装、Docker基本操作
  • 一名【合格】前端工程师的自检清单
  • 麒麟KylinV10SP1(2203)推荐安装一些硬件监控类软件与使用
  • Socks5 协议简介
  • HTTP第三讲——四层模型、七层模型
  • ChatGPT会对我们日常生活带来什么影响?这些技术会改变我们学习阅读工作方式吗?
  • Netty基础(二)
  • 分析vmlinux编译过程
  • Android 自定义View实战—制作一个简易输入框
  • Python 面向对象
  • 关于百度地图开放平台api覆盖物“自定义Marker图标”不能正常显示的解决方案
  • 实验二 存储器管理
  • 探究Qt Quick之Overlay类的魅力
  • Docker 配置记录
  • 【tkinter 专栏】专栏前言
  • 如何更改Windows 10操作系统的默认字体
  • gitlab服务器发送邮件配置
  • 第四天作业
  • 【Leetcode -412.Fizz Buzz -414.第三大的数】
  • Python--一言不合就try一下?
  • 论文ai生成-一键生成论文的软件
  • 二维数组---C语言(行列抽象思维)
  • 极光笔记 | 极光推出“运营增长”解决方案,开启企业增长新引擎
  • docker网卡的IP地址修改
  • openGL入门
  • 地狱级的字节跳动面试,6年测开的我被按在地上摩擦.....
  • 双目测距--3 双目标定
  • 回调函数_回顾
  • 远程桌面连接出现了内部错误怎么解决?
  • 20230506在Ubuntu22.04下使用python3下载合并ts切片