火山视窗JSON合成与解析
一、JSON介绍与模块配置
1、JSON介绍。
JSON是一种轻量级的数据交换格式,可以理解为易语言当中的“写配置项”功能。
当然JSON功能要更多,可以多层嵌套存储一些复杂的数据。
JSON的存储要使用“键名”和“键值”,大致数据格式如下图。
2、JSON目前共有两个对象,“JSON对象类”和“JSON数组类”。
3、JSON对象类标准格式为以“{”开始,最终以“}”结尾。
键名:用英文双引号包含。
键值:可以使用“文本”,“整数”,“小数”,“长整数”,“逻辑”(true为真、false为假)以及“对象键值”(可使用json对象类或json数组类当键值)。
4、利用一些JSON解析工具,解析后,可以非常清晰的看到JSON的结构信息。
5、JSON数组类标准格式为以“[”开始,最终以“]”结尾。
6、JSON数组类没有键名键值概念,只有成员。
7、成员内容可以使用“文本”,“整数”,“小数”,“长整数”,“逻辑”(true为真、false为假)以及“对象成员”(可使用json对象类或json数组类当成员)。
8、每个成员之间必须用英文的逗号隔开,并且最后一个成员不需要逗号。
1、首先需要右键项目,选择“配置项目模块”
2、找到JSON数据访问支持模块,勾选后点击确定即可。
二、合成JSON对象类
1、下面直接列举一个简单的例子来介绍如何合成json对象类数据。
合成下面的json文本格式。
{
"文本键名": "键值",
"整数键名": 111,
"对象键名": {
"键名": "键值"
}
}
2、首先启用顺序输出,这样添加顺序和输出顺序是一致的。
3、然后需要生成最外层的json对象类,依次置入文本和整数值。
4、因为第三个键值是JSON对象类,因此要首先将嵌套的JSON对象类生成出来。
5、最后将生成的嵌套的JSON对象,利用“置入对象值”方法置入到一级对象中即可。
6、然后将JSON对象中的文本导出到编辑框中显示。
7、这里要进行一下文本替换,替换一下换行符,才能正常显示。
6、最后运行后可以看到生成的JSON和示例JSON是一样的,无论多么复杂的json,都离不开这些元素,挨个嵌套进去就可以。
三、解析JSON对象类
1、下面直接列举一个简单的例子来介绍如何解析json对象类数据。
解析下面的json代码,比如我要取出“对象键名”中的“键值”信息。
{
"文本键名": "键值",
"整数键名": 111,
"对象键名": {
"键名": "键值"
}
}
2、想要取出里面的信息,首先根据json文本创建json对象。
3、创建后取出被嵌套的json对象。
4、最后根据取出来的这个对象,继续取键名即可。
6、最终可以看到键值被取出。无论多么复杂的JSON嵌套,一层一层的依次取出即可。
四、合成JSON数组类
1、下面直接列举一个简单的例子来介绍如何合成json数组数据。
合成下面的json文本格式。
[
1,
True,
“文本”
{
“内嵌”:”JSON对象”
},
[1,”JSON数组”
2、想要实现上面的json代码合成需要下面几步。
3、首先先启用顺序输出,也可以不启用,如果不启用的话添加的顺序和生成的顺序会不一样。
第一:使用“置入XXX”先把整数,文本和逻辑值置入进去。
第二:定义JSON对象的变量,并将内嵌的JSON生成一下,然后调用数组的“置入对象值”置入这个对象。
第三:定义一个json数组的变量,将内嵌的json数组生成一下,然后调用数组的“置入对象值”置入这个数组对象。
第四:最后转换成文本显示出来即可,因为默认输出的是\n换行符,想要正常的显示在编辑框中,需要转换成\r\n.
7、最后运行后可以看到,生成的数据和提供的示例是一样的,证明生成代码没问题。
五、解析JSON数组类
1、找一个小例子来演示解析,解析下面的json数组类。
[
1,
"文本",
{
"内嵌”:”JSON对象"
},
[1,"JSON数组"
2、循环解析数据演示。
(1)首先定义一个常量值将json数据内置进去。
(2)然后根据常量值创建这个json数组。
(3)利用循环方法,循环取出里面每个成员的数据显示在编辑框中。
(4)循环的时候要进行类型判断,根据不同的类型取不同的数据,火山视窗中的JSON不支持任意类型的随便获取。
3、最后可以看到每个成员的数据被取出。
4、演示一下如何取出里面的JSON对象类。
5、数组索引是从0开始,你可以直接提供对象所处的索引值,比如在提供的json文本中,位于成员2,就提供2即可。
6、可以看到对象内的数据被取出。