<menu id="ycqsw"></menu><nav id="ycqsw"><code id="ycqsw"></code></nav>
<dd id="ycqsw"><menu id="ycqsw"></menu></dd>
  • <nav id="ycqsw"></nav>
    <menu id="ycqsw"><strong id="ycqsw"></strong></menu>
    <xmp id="ycqsw"><nav id="ycqsw"></nav>
  • json格式文件怎么打開編輯(手機編輯json文件的軟件介紹)


    工作過程中,經常需要使用json這種輕量級的數據交換格式,例如,通過它可以組織數據保存到配置文件,客戶端和服務端通過json格式來進行通信等,但是,針對特定的需求場景,需要設計怎樣的json格式比較合適呢,json到底可以支持多少種格式呢,有沒有一種簡單的概括,就能讓使用者輕松使用它呢!

    一般知識都有基本的理論結構,所以,本文首先將說明json的基本知識點,然后基于開源軟件jsoncpp來說明如何構建/讀寫json, 再分享個人的使用心得,最后再總結json的關鍵要點,理解了這一點,玩轉json不是問題。

    一、Json簡介

    Json是輕量級的數據交換格式,它便于閱讀和編寫,它是完全獨立于程序語言的文本格式。

    二、Json結構

    Json有兩個結構, 分別是“名稱/值”對的集合和值的有序列表?!懊Q/值”對的集合可以簡單理解為對象集合,而值的有序列表可以理解為數組。

    json其實不難,只需了解一點,就能輕松玩轉它

    這里舉一個“名稱/值”對的集合的例子,它是以左大括號開始,以右大括號結束,中間是由多個“名稱/值”對組成,各個“名稱/值”對之間用逗號隔開。

    json其實不難,只需了解一點,就能輕松玩轉它

    舉一個“值的有序列表”的例子,它是以左中括號開始,以右中括號結束,中間是由多個值組成,各個值之間用逗號隔開。

    json其實不難,只需了解一點,就能輕松玩轉它

    三、Json形式

    Json主要由三種形式,分別為對象(object), 數組(array), 值(value)。

    對象(object)是“名稱/值”對集合,名稱與值之間通過冒號隔開,另外對象是以左大括號開始,以右大括號結束。

    json其實不難,只需了解一點,就能輕松玩轉它

    數組(array)是值的有序集合,它是以左中括號開始,以右中括號結束。

    json其實不難,只需了解一點,就能輕松玩轉它

    值(value)可以是字符串(string)、數值(number)、對象(object)、數組(array)、true、false、null。這里我們會發現對象(object)里面有值(value), 數組(array)里面也有值(value), 而值(value)又包含有對象和數組,所以它們是可以嵌套的。

    json其實不難,只需了解一點,就能輕松玩轉它

    Json就是由上面簡單的元素來組建復雜的信息元素。

    四、Json例子

    jsoncpp是C++語言編寫的開源json庫,通過該庫,我們可以很容易的構建、讀寫json。接下來就基于jsoncpp來實現幾個構建、讀取json的例子。通過例子可以對json有更深的理解。jsoncpp最基本的對象就是Json::Value。

    構建一個最簡單的對象,然后輸出整個json信息,最后讀取json值,先調用isMember判斷名稱是否為root成員,如果是的話,那么就讀取輸出。

    json其實不難,只需了解一點,就能輕松玩轉它

    輸出的日志信息如下所示,大括號包含了一個“名稱/值”對。

    json其實不難,只需了解一點,就能輕松玩轉它

    構建嵌套對象,第一個“名稱/值”對中的“值”又是一個對象。

    json其實不難,只需了解一點,就能輕松玩轉它

    輸出的日志信息如下所示

    json其實不難,只需了解一點,就能輕松玩轉它

    構建三層嵌套對象,第一個“名稱/值”對中的“值”是一個對象,而該對象的“值”又是一個對象。依次類推,可以構建更多層的嵌套對象。

    json其實不難,只需了解一點,就能輕松玩轉它

    輸出的日志信息如下所示

    json其實不難,只需了解一點,就能輕松玩轉它

    構建簡單的數組,jsoncpp中構建數組是通過append的接口來創建的。讀取數組之前,先調用isArray來判斷對象是否為數組,如果是的話,再讀取輸出。這里需要注意數組的個數。從防御式編程的角度看,讀取數組值之前,需要判斷數組索引是否在有效范圍內。

    json其實不難,只需了解一點,就能輕松玩轉它

    輸出的日志信息如下所示,從這里我們也可以確定數組是可以單獨作為獨立json串出現的。之前一直都有一個誤區,就是認為json一定要用大括號包括起來。

    json其實不難,只需了解一點,就能輕松玩轉它

    構建對象和數組組成的json。首先創建一個數組,然后將其作為對象的值

    json其實不難,只需了解一點,就能輕松玩轉它

    輸出的日志信息如下所示

    json其實不難,只需了解一點,就能輕松玩轉它

    最后再構建稍微復雜一點的json串,它是由對象、數組、對象來組成的,即對象的值是一個數組,而數組內部的值是由對象組成。

    json其實不難,只需了解一點,就能輕松玩轉它

    輸出的日志信息如下所示

    json其實不難,只需了解一點,就能輕松玩轉它

    五、使用心得

    1. 讀取json值之前,先判斷其有效性,可以結合斷言機制,調用isMember或者isArray來進行判斷。
    2. 使用數組的時候,需要特別注意數組下標。

    六、總結

    json主要是由對象或數組創建而成,而它們的嵌套使用就可以創建復雜的json串,根據特定場景的需求來創建適用的json格式。

    版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

    發表評論

    登錄后才能評論
    国产精品区一区二区免费