AutoIt语言的json支持

本文介绍了一个针对 AutoIt 的 JSON UDF 库的小问题及其解决方案。该库不支持数组或对象结束符前多余的逗号,这在许多程序自动生成的 JSON 文件中常见。文章提供了补丁代码以增强库的功能,使其能够处理这种格式的问题。

http://www.autoitscript.com/forum/topic/104150-json-udf-library-fully-rfc4627-compliant/

请前往该网址自行下载。

不过该库有个小问题,就是不支持数组或对象结束符前多留个逗号,即支持[1,2,3]当时不支持[1,2,3,],这很要命的,因为很多json文件是程序生成的,生成时就多带了个逗号,C语言都支持这个多余的逗号,json当然也应该支持,json-c是支持的。

所以必须为这个UDF添加上这个功能,patch内容:

@@ -503,6 +503,10 @@
case ','
__JSONReadNext()
__JSONSkipWhitespace()
+ If $__JSONCurr == '}' Then
+ __JSONReadNext()
+ return $o
+ EndIf
case else
if not $__JSONWhitespaceWasFound then
; badly-formatted object
@@ -567,6 +571,10 @@
case ','
__JSONReadNext()
__JSONSkipWhitespace()
+ If $__JSONCurr == ']' Then
+ __JSONReadNext()
+ return $a
+ EndIf
case else
if not $__JSONWhitespaceWasFound then
; badly-formatted array

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值