我有这样的疑问:
在文件中我有多个这样的json行
{"id":1,"my_struct":{"other_id":1,"text":"HelloWorld0"}}
{"id":2,"my_struct":{"other_id":12,"text":"HelloWorld1"}}
{"id":3,"my_struct":{"other_id":123,"text":"HelloWorld2"}}
我尝试使用JSON Path查询获取数据:
&.id
我得到空行。
但是如果我在文件中使用相同的JSON Path查询只有一行
{"id":1,"my_struct":{"other_id":1,"text":HelloWorld0}}
我得到了正确的结果:1
我做错了什么?我怎样才能得到所有的身份?
答案 0 :(得分:1)
根据您的示例,它是不正确的JSON格式。您可以在此在线工具中实际验证JSON或生成JSON:http://www.jsoneditoronline.org/
请阅读此处的示例,了解JsonPath的更多详细信息:https://github.com/jayway/JsonPath#user-content-path-examples
要使您的JSON有效,它应采用以下格式:
[
{"id":1,"my_struct":{"other_id":1,"text": "HelloWorld0 Value"}},
{"id":2,"my_struct":{"other_id":12,"text": "HelloWorld1 Value"}},
{"id":3,"my_struct":{"other_id":123,"text": "HelloWorld2 Value"}}
]
要回答有关如何获取所有ID的问题,请使用"$.[*].id"
。