Octave jsondecode 将一个元素数组视为 not 数组,例如:
j1 = jsondecode ('{"foo": [42]}')
和
j2 = jsondecode ('{"foo": 42}')
两个 jsonencode 都是同一件事:
ans = {"foo":42}
如何将其编码为以下:
ans = {"foo":[42]}
不太清楚您的情况是哪个方向出现问题,但也许这就是您所追求的?
> jsonencode( struct( 'foo', {{42}} ) )
ans = {"foo":[42]}
不幸的是,反过来说,那么是的,'42'和'[42]'的解码将产生相同的八度对象,因为在八度中,标量只是一个大小为 [1,1 的数组]。因此,如果您需要指定围绕此类值的包装数组,则必须先手动将其转换为单元格,然后再编码为 json 字符串。