Qt數(shù)據(jù)存儲(三)

Qt 中的 JSON

JSON 是一種基于文本的數(shù)據(jù)交換開放標準,易于閱讀和解析。它用于表示簡單的數(shù)據(jù)結(jié)構(gòu)和關(guān)聯(lián)數(shù)組,稱為對象。它與 JavaScript 相關(guān),但是是一種獨立于語言的符號形式。

一個對象可以有兩種形式:

  • 名稱/值對的集合
  • 有序值列表
  { “l(fā)ast_name”:“Routledge”,“first_name”:“Ronald”,“birth_date”:1960 }
   "colours": ["green", "blue", "yellow"]

本地存儲

Local Storage API 提供了從 QML 和 JavaScript 訪問 SQL 數(shù)據(jù)庫中本地離線存儲的能力。

這些數(shù)據(jù)庫是特定于用戶和特定于 QML 的,但可供所有 QML 應(yīng)用程序訪問。它們作為SQLite數(shù)據(jù)庫(SQL 數(shù)據(jù)庫驅(qū)動程序)存儲在 QDeclarativeEngine::offlineStoragePath() 的 Databases 子目錄中。

該 API 符合 HTML5 Web 數(shù)據(jù)庫 API 的同步 API,W3C 工作草案 2009 年 10 月 29 日(HTML5 Web 數(shù)據(jù)庫 API)。

有關(guān)使用本地存儲 API 的基本演示,請參閱Qt 快速示例 - 本地存儲。

QSettings 類

QSettings類提供應(yīng)用程序設(shè)置的持久存儲。應(yīng)用程序通常會記住上一個會話的設(shè)置。

設(shè)置在不同平臺上的存儲方式不同。例如,在 Windows 上,它們存儲在注冊表中,而在 macOS 上,它們存儲在 XML 文件中。

QSettings使您能夠以便攜的方式保存和恢復應(yīng)用程序設(shè)置。構(gòu)造和銷毀QSettings對象是輕量級和快速的。在創(chuàng)建QSettings的對象時,最好不僅指定應(yīng)用程序的名稱,還指定組織的名稱。例如:

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

資源

Qt 資源系統(tǒng)是一種獨立于平臺的機制,用于在應(yīng)用程序的可執(zhí)行文件中存儲二進制文件。如果您的應(yīng)用程序經(jīng)常需要某個文件或一組文件,這將非常方便。它還可以防止該特定文件丟失。

資源數(shù)據(jù)既可以編譯成二進制并在應(yīng)用程序代碼中立即訪問,也可以動態(tài)創(chuàng)建二進制資源并由應(yīng)用程序向資源系統(tǒng)注冊。

默認情況下,應(yīng)用程序代碼可以通過與存儲在源樹中相同的文件名: /prefix或帶有 qrc 方案的 URL 訪問資源。

檔案歸檔

存檔文件是通常壓縮的文件或目錄的集合,以減少它們在驅(qū)動器上消耗的空間。存檔文件的示例有 ZIP、TAR、RAR 和 7z。

Qt 支持由 zlib 生成的檔案(參見qCompress() 和 qUncompress())。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容