JimStone(谢栋) - JSON模块:STJson2.3(开源+示例) - 纯算法-易语言

时间:2024-07-03 12:22:56
【文件属性】:

文件名称:JimStone(谢栋) - JSON模块:STJson2.3(开源+示例) - 纯算法-易语言

文件大小:327KB

文件格式:ZIP

更新时间:2024-07-03 12:22:56

易语言模块

2.3 优化多线程支持 修复了负数解析是出现的“解析数值出错”错误 优化了多线程的支持。去除了所有“打开内存文件”改用 快速字节集对象 快速解析对象使用方法 类: 快速JSON解析类 / STFastJson 取句柄() / get_handle() : 返回 节点句柄。失败返回 0。通过路径获取节点的原始句柄信息。 引用使用句柄获取数据的效率比通过路径获取数据效率更高。句柄 实际指向数据信息存储的位置。根节点句柄必然为 1。 ---------------------------------------------------------------------------- 大部分参数都包含? 路径(path)? 和? 句柄(handle)? 两个参数。 如果 句柄大于0 则基于句柄执行路径查询。 路径访问类似JS中的访问方式: 数组访问: 数组使用“[数组索引 ]”的方式访问,索引值从1开始。例如:a[1].name、a.b[2].name 根节点为数组则直接使用数组规则访问。例如:[1].name、[2].a.b、[3].a[1].b 对象访问: 对象直接使用“.节点名称 ”下级节点名称访问。例如:a.b、book.cover.url 根节点为对象则直接使用下级节点名称访问。例如:user.name、object.property 如果对象主键名称不为数字、字母或下划线,则使用“['主键 ']”(支持单引号或双引号包裹名称)的方式访问。例如:user['信息'].address、bbs.article['id']、['用户'].['名称']、['用户']['名称'] ---------------------------------------------------------------------------- 解析() / parse() ?: 解析JSON文本。 参数 [是否保留顺序]:指定是否保留对象原始节点顺序。如果保留原始顺序,则 取对象所有主键() 方法返回的主键将使用原始顺序。如果为 真 则解析效率会有细微的下降。如果对对象下级节点的顺序要求不高的情况下,建议设置本参数为 假。 参数 [错误原因]:在解析失败时,会返回详细的错误原因,错误原因包含行号和错误所在行中的位置。 参数 [是否Unicode转GBK] : 是否将Unicode“\u”符号转换为GBK。默认:真 取对象句柄() /??get_object_handle() : 通过对象主键返回对象的下级节点句柄。 取数组句柄() / get_array_handle() :??通过数组索引返回数组的下级节点句柄。 取类型() / get_type() ?: 获取节点的类型。返回类型对应“#快速JSON类型_” / “#JFTYPE_” 开头的常量。注意此处的英文常量比构造和原JSON类中多了个 F,为 #J F TYPE_。 取数组成员数() / get_array_count() ?: 返回数组成员数量。非数组时返回0 取对象所有主键() / get_object_keys()? : 获取对象所有下级属性节点的主键。返回主键数量,主键内容存到“主键数组”参数中 取文本() / get_string()? : 返回节点文本内容。数组返回“[Array]”,对象返回“Object”,其它对象则返回原始文本内容 取整数() / get_long()? : 返回节点内容为长整数。双精度小数/长整数/文本都将被自动转换,其它返回0 取小数() / get_double() ?: 返回节点内容为双精度小数。双精度小数/长整数/文本都将被自动转换,其它返回0 取逻辑值() / get_bool() ?: 返回节点内容为逻辑型。不存在或非逻辑型返回 假 是否为空() / is_null()? : 判断是否为空。不存在的节点也返回 真,存在且非null型返回 假 是否存在() / exists()? : 判断节点是否存在 ???????? Json构造和本模块详细使用方法请 参考上个版本的链接 ?。 点此查看其它版本


【文件预览】:
JimStone(谢栋) - JSON模块:STJson.e
STJson2.0.png
STJson2.3.png
JimStone(谢栋) - JSON模块:STJson2.3
----JimStone(谢栋) - JSON模块:STJson.e(139KB)
----STJson2.3.png(69KB)
----JimStone(谢栋) - JSON模块.ec(127KB)
JimStone(谢栋) - JSON模块.ec

网友评论