{
"A1":{
"name":"Ad hoc",
"projectId":0
},
"X2":{
"name":"BBB",
"projectId":101
},
"AB":{
"name":"CCC",
"projectId":102
},
"recordsCount":3
}
对于这个JSON,如何提取值?我需要输出,
A1, Ad hoc
X2, BBB
AB, CCC
专家投入赞赏。
答案 0 :(得分:1)
<强>分析强>
XPath 无法读取未命名的属性。它总是会导致异常。如果要获取值,则需要使用 JsonPath 。
<强>解决方案强>
即便如此,添加周围的括号也是有意义的,否则第一级也将被消耗:
[
{
"A1":{
"name":"Ad hoc",
"projectId":0
},
"X2":{
"name":"BBB",
"projectId":101
},
"AB":{
"name":"CCC",
"projectId":102
},
"recordsCount":3
}
]
您可以在jsonpath.com上尝试正确的查询。对于我(使用附加括号),路径$.*
起作用。
要提取值,如果使用文件或REST请求,则需要在Talend中使用 tExtractJSONFields 组件。
对于包含字母数字标识符的字段,有效JSON query
可能很容易[0]
。