提取JSON字段而不在Talend中循环

提取JSON字段而不在Talend中循环,json,talend,Json,Talend,在json上,如下所示 { 'a' : 'hello' 'b' : { 'c' : 'hello', 'd': 'hello2' } } 如果我将json循环路径指定为“$.*”并将要提取的字段指定为“b”,则无法提取c和d,因为组件在b上循环 为简单的json提取配置TextRactJSonfield的正确方法是什么?请参见下面的示例。我使用的是tFileInputJSON组件,而不是textracjsonfields,但它们具有相同的可用属性 图1:json文件。与您的唯一区别是

在json上,如下所示

{ 
  'a' : 'hello'
  'b' : { 'c' : 'hello', 'd': 'hello2' }
}
如果我将json循环路径指定为
“$.*”
并将要提取的字段指定为
“b”
,则无法提取c和d,因为组件在b上循环


为简单的json提取配置TextRactJSonfield的正确方法是什么?

请参见下面的示例。我使用的是
tFileInputJSON
组件,而不是
textracjsonfields
,但它们具有相同的可用属性

图1:json文件。与您的唯一区别是,我在a和b字段之间添加了逗号,我使用双引号而不是单引号,并且我将第一个值更改为hello_a。否则,它与您的示例相同

图2:输入组件。这就是魔法发生的地方。您可以看到,我使用的是
xPath
,而不是
JSONPath
(我的运气更好)

图3:这是所有值都已提取的证明

您还可以将json设置为元数据,并在那里进行实验。见图4。这也表明Talend可以访问文件中的所有数据,并允许您试验文件结构和path语句,以立即获得结果