Qt数据存储(三)

Qt 中的 JSON

JSON 是一种基于文本的数据交换开放标准,易于阅读和解析。它用于表示简单的数据结构和关联数组,称为对象。它与 JavaScript 相关,但是是一种独立于语言的符号形式。

一个对象可以有两种形式:

  • 名称/值对的集合
  • 有序值列表
  { “last_name”:“Routledge”,“first_name”:“Ronald”,“birth_date”:1960 }
   "colours": ["green", "blue", "yellow"]
  • Qt 中的 JSON 支持
  • JSON 保存游戏示例

本地存储

Local Storage API 提供了从 QML 和 JavaScript 访问 SQL 数据库中本地离线存储的能力。

这些数据库是特定于用户和特定于 QML 的,但可供所有 QML 应用程序访问。它们作为SQLite数据库(SQL 数据库驱动程序)存储在 QDeclarativeEngine::offlineStoragePath() 的 Databases 子目录中。

该 API 符合 HTML5 Web 数据库 API 的同步 API,W3C 工作草案 2009 年 10 月 29 日(HTML5 Web 数据库 API)。

有关使用本地存储 API 的基本演示,请参阅Qt 快速示例 - 本地存储。

  • Qt Quick 本地存储 QML 类型

QSettings 类

QSettings类提供应用程序设置的持久存储。应用程序通常会记住上一个会话的设置。

设置在不同平台上的存储方式不同。例如,在 Windows 上,它们存储在注册表中,而在 macOS 上,它们存储在 XML 文件中。

QSettings使您能够以便携的方式保存和恢复应用程序设置。构造和销毁QSettings对象是轻量级和快速的。在创建QSettings的对象时,最好不仅指定应用程序的名称,还指定组织的名称。例如:

QSettings settings("MyCompany", "Accountancy");

资源

Qt 资源系统是一种独立于平台的机制,用于在应用程序的可执行文件中存储二进制文件。如果您的应用程序经常需要某个文件或一组文件,这将非常方便。它还可以防止该特定文件丢失。

资源数据既可以编译成二进制并在应用程序代码中立即访问,也可以动态创建二进制资源并由应用程序向资源系统注册。

默认情况下,应用程序代码可以通过与存储在源树中相同的文件名: /prefix或带有 qrc 方案的 URL 访问资源。

  • Qt 资源系统

档案归档

存档文件是通常压缩的文件或目录的集合,以减少它们在驱动器上消耗的空间。存档文件的示例有 ZIP、TAR、RAR 和 7z。

Qt 支持由 zlib 生成的档案(参见qCompress() 和 qUncompress())。

你可能感兴趣的:(Qt数据存储(三))