JSON数据是什么

参考博客:JSON 数据格式

  • JSON数据是什么

JSON(JavaScript Object Notation)是一种轻量级的数据交互格式。JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言,易于解析与生成。

  • 基础结构
  1. "名称/值"键值对的集合。不同语言中,被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组(associative array)。
  2. 值的有序列表(An ordered list of values)。在大部分语言中被理解为数组(array)。
  • 实例
  1. 表示"名称/值"的键值对表示

最为简单的表示为:{“first”:"aaa}

当有多个键值对绑在一起:{“first”:“aaa”,“second”:“bbb”,“third”:“ccc”}

  1. 表示数组

需要将多个花括号的记录分组绑在一起:

{“people”:[

{“first”:“aaa”,“second”:“bbb”},

{“first”:“ccc”,“second”:“ddd”},

{“first”:“eee”,“second”:“fff”}

]}

在这个示例中,只有一个名为 people的变量,值是包含三个条目的数组。

可以使用相同的语法表示多个值(每个值包含多个记录):

{ “programmers”: [

{ “firstName”: “Brett”, “lastName”:“McLaughlin”, “email”: “aaaa” },

{ “firstName”: “Jason”, “lastName”:“Hunter”, “email”: “bbbb” },

{ “firstName”: “Elliotte”, “lastName”:“Harold”, “email”: “cccc” }

],

“authors”: [

{ “firstName”: “Isaac”, “lastName”: “Asimov”, “genre”: “science fiction” },

{ “firstName”: “Tad”, “lastName”: “Williams”, “genre”: “fantasy” },

{ “firstName”: “Frank”, “lastName”: “Peretti”, “genre”: “christian fiction” }

],

“musicians”: [

{ “firstName”: “Eric”, “lastName”: “Clapton”, “instrument”: “guitar” },

{ “firstName”: “Sergei”, “lastName”: “Rachmaninoff”, “instrument”: “piano” }

] }

这里最值得注意的是,能够表示多个值,每个值进而包含多个值。但是还应该注意,在不同的主条目(programmers、authors 和 musicians)之间,记录中实际的名称 / 值对可以不一样。JSON 是完全动态的,允许在 JSON 结构的中间改变表示数据的方式。

在处理 JSON 格式的数据时,没有需要遵守的预定义的约束。所以,在同样的数据结构中,可以改变表示数据的方式,甚至可以以不同方式表示同一事物。

你可能感兴趣的:(Qt,Creator,json)