标签: json talend
在json上,如下所示
{ 'a' : 'hello' 'b' : { 'c' : 'hello', 'd': 'hello2' } }
我无法提取c和d因为组件在b上循环,如果我指定json循环路径为"$.*"和要提取的字段'b'。
"$.*"
'b'
为简单的json提取配置tExtractJsonFields的正确方法是什么?
答案 0 :(得分:1)
请参阅下面的示例。我使用的是tFileInputJSON组件,而不是tExtractJSONFields,但它们具有相同的可用属性。
tFileInputJSON
tExtractJSONFields
图1:json文件。与你的唯一区别是我在a和b字段之间添加了一个逗号,我使用的是双引号而不是单引号,我将第一个值更改为hello_a。否则它与你的例子相同。
图2:输入组件。这就是魔术发生的地方。您可以看到我使用xPath而不是JSONPath(我的运气更好)。
xPath
JSONPath
图3:这是所有值都被提取的证据。
您还可以将json设置为元数据并在那里进行实验。请参见图4.这也表明Talend可以访问文件中的所有数据,并允许您试验文件结构和路径语句以获得即时结果。