g1ant:jsonpath的方法length()未实现



我在获取数组的大小项时遇到问题。g1ant中未实现jsonPath"length(("的函数,因为引发异常"预期数组索引"。下面是g1ant脚本中的测试示例。

addon core version 4.103.0.0
addon language version 4.104.0.0
♥jsonImage = ⟦json⟧‴{ "book" : [ { "name" : "Bambi"} , { "name" : "Cinderella" } ] }‴
♥aaa = ♥jsonImage⟦$.book.length()⟧
dialog ♥aaa

是否有其他与数组长度相关的解决方案?

不可能像您尝试的那样获得json数组元素的数量。G1ANT使用Newtonsoft.Json库来选择Json标记,因为它们不允许像.length()这样的表达式,正如您可以在这里阅读的那样。

以下是解决此问题的方法。

♥jsonImage = ⟦json⟧‴{ "book" : [ { "name" : "Bambi"} , { "name" : "Cinderella" } ] }‴
♥jsonArrLength = 0
♥hasExceptionOccurred = false
while ⊂!♥hasExceptionOccurred⊃
try errorcall NoMoreElements
♥test = ♥jsonImage⟦book[♥jsonArrLength]⟧
♥jsonArrLength = ♥jsonArrLength + 1
end try
end while
dialog ♥jsonArrLength
procedure NoMoreElements
♥hasExceptionOccurred = true
end procedure

最新更新