Json格式讲解
文章目录
前言
本篇文章讲解一下Json的格式以及常见的组合方法格式,比较适合小白阅读
Json格式转换网址
转载请标明出处!!!!!!
提示:以下是本篇文章正文内容,下面案例可供参考
一、Json是什么?
直白来讲Json就是一种轻量级的文本数据交换格式,如果你是小白你可千万不要小看他的用途,他相比较XML来讲可读性更强一些,其中他的数据处理功能也是非常强大的。
二、Json的主要符号以及语法规则
1.引入库
数据在名称/值对中:key:value
数据由逗号分隔:,(一定要是英文的)
大括号 {} 保存对象(大括号({})在各类语言中就相当于一个类的存在)
中括号 [] 保存数组,数组可以包含多个对象(中括号([ ])这在语言中就代表一个数组,数组里边的类型可以自己定义)
2.Json名称/值对
JSON 数据的书写格式是:
key : value
名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值:
“name” : “樱花粉的小铁锹”
3.JSON 值
JSON 值可以是:
数字(整数或浮点数)
字符串(在双引号中)
逻辑值(true 或 false)
数组(在中括号中)
对象(在大括号中)
null
4.JSON 数字
JSON 数字可以是整型或者浮点型:
{ “age”:30 }
数字的话就不用带" "双引号了,带上双引号就表示为一个字符串
5.JSON 对象
JSON 对象在大括号 {} 中书写:
{key1 : value1, key2 : value2, … keyN : valueN }
上边给大家讲解了,Json中的{ }就相当于一个类
在上边我在最外边写了一个大括号{ }这个大括号就相当于C#中的Root 类,而里边的的大括号前边的"item"则表示给该类定义了名称该结构就相当于旁边显示出来的Class Item,而此时的item在最外层的大括号中就相当于在Root类中定义了一个Item类型的属性。
6.JSON 数组
[
{ key1 : value1-1 , key2:value1-2 },
{ key1 : value2-1 , key2:value2-2 },
{ key1 : value3-1 , key2:value3-2 },
…
{ key1 : valueN-1 , key2:valueN-2 },
]
用在线转换格式工具转换格式如下图
{
“item”:[
{ “name” : “小铁锹” , “age”:18},
{ “name” : “小阿giao” , “age”:88}
]
}
该json格式转换成C#如下所示
public class ItemItem
{
/// <summary>
/// 小铁锹
/// </summary>
public string name { get; set; }
/// <summary>
///
/// </summary>
public int age { get; set; }
}
public class Root
{
/// <summary>
///
/// </summary>
public List <ItemItem > item { get; set; }
}
最外层的大括号{ }还是等价于Class Root,而我们在这里讲到的中括号[ ]相当于一个类,这里给我们转换过后的数据是变成了一个泛型的的集合item,而他的变量则是我们的类ItemItem,而我们的ItemItem类里边则有我们的name属性,我们的age属性同时我们的name后边跟的值是string类型的,在Json里用"“双引号给引用起来,而我们age后边的数值则没有加双引号”",大家还是要把Json格式结合到我们的语言中去理解,这样大家才能更清晰的了解我们的数据在json中是怎么存储与表达的。
数组里边的参数类型一定要一致,否则该Json格式就是错误的。
Json中的数组跟我们语言中的数组是一样的,数组中的类型只要确定了就要按照这个格式来。我以下的写法就是错误的写法
我的item数组第一个穿的值是一个对象{ }也就是一个类,而我第二个值传的是一个字符串,此时就会报错。此时把那个字符串删了就可以,而我们再传个对象它就不会报错,但是对象中的格式要与我们第一个对象的格式保持一致,否则也会报错。看以下展示
此时下边的对象相对于上边的来说少了一个数组,这个格式就是明显的不对,此时就会报错,把数组加上就可以了。
在Json中也支持数组嵌套的
我在这里嵌套了三层数组,大家可以仔细观察一下,嵌套数组最外层的数组要有数组名,但是里边的数组就不能添加数组名。
7.JSON 布尔值
谈到布尔值无非就true or false那布尔值在Json中是怎么传递的?大家可以思考一下是要加双引号还是跟数值一样的方式?
答案揭晓
{ “flag”:true }
Json中的布尔值跟数值一样的赋值方式
8.JSON null
JSON 可以设置 null 值:
{ “runoob”:null }
null的使用跟布尔值,数值的用法一致。
总结
今天主要跟大家介绍了Json的语法格式,虽然这只有简单的几种格式,但是他们的搭配使用可是花样百出,所以大家一定要好好打好自己的基础,这样才能更好的为以后做铺垫。