本源码转载自利快云https://www.lkuaiy.com/
火山安卓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、首先需要生成最外层的json对象类,依次置入文本和整数值。 3、因为第三个键值是JSON对象类,因此要首先将嵌套的JSON对象类生成出来。 4、最后将生成的嵌套的JSON对象,利用“置入对象值”方法置入到一级对象中即可。 5、然后将JSON对象中的文本导出到编辑框中显示。 6、最后运行后可以看到生成的JSON和示例JSON是一样的,无论多么复杂的json,都离不开这些元素,挨个嵌套进去就可以。 三、解析JSON对象类 1、下面直接列举一个简单的例子来介绍如何解析json对象类数据。 解析下面的json代码,比如我要取出“对象键名”中的“键值”信息。 { "文本键名": "键值", "整数键名": 111, "对象键名": { "键名": "键值" } } 2、想要取出里面的信息,首先要进行创建JSON对象类,然后才能操作。 3、定义一个常量值,将json文本放进去。 4、利用“创建自文本数据()”方法创建本对象。 5、创建后取出被“对象键名”中存储的JSON对象类,取出来后,继续取“键名”的文本值,就可以将“键值”取出来。 6、最终可以看到键值被取出。无论多么复杂的JSON嵌套,一层一层的依次取出即可。 四、合成JSON数组类 1、下面直接列举一个简单的例子来介绍如何合成json数组数据。 合成下面的json文本格式。 [ 1, 1.1, True, “文本”, { "内嵌":"JSON对象" }, [1,"JSON数组"] 2、想要实现上面的json代码合成需要四步。 3、第一:使用“置入XXX”先把整数,小数和逻辑值置入进去。 4、第二:定义JSON对象的变量,并将内嵌的JSON生成一下,然后调用“置入对象值”置入这个对象 5、第三:定义一个json数组的变量,将内嵌的json数组生成一下,然后调用“置入对象值”置入这个数组对象。 6、第四:最后转换成文本显示出来即可。 7、最后运行后可以看到,生成的数据和提供的示例是一样的,证明生成代码没问题。 五、解析JSON数组类 1、找一个小例子来演示解析,解析下面的json数组类。 [ 1, “文本” { “内嵌”:”JSON对象” }, [1,”JSON数组” 2、循环解析数据演示。 (1)首先定义一个常量值将json数据内置进去。 (2)然后根据常量值创建这个json数组。 (3)利用循环方法,循环取出里面每个成员的数据显示在编辑框中。 3、最后可以看到每个成员的数据被取出。 4、演示一下如何取出里面的JSON对象类。 5、数组索引是从0开始,你可以直接提供对象所处的索引值,比如在提供的json文本中,位于成员2,就提供2即可。 6、可以看到对象内的数据被取出。
|