Talend和法国格式的数值

gui*_*i42 2 localization numeric talend

我正在尝试使用tFileInputMSDelimited读取CSV文件,该CSV文件包含数字值(例如12或12,3)

但是,当我尝试将它们读为“ Double”时,它们将被拒绝:

For input string: "1 098,00" - Line: 0
For input string: "3,5" - Line: 60
etc...
Run Code Online (Sandbox Code Playgroud)

读取整数没有任何问题。

我的猜测是Talend期望使用美国格式的值(1098.00或3.5)。

如何配置Talend使用数字(1 098,00或3,5)的法语格式?

我正在使用Talend V5.4.1

Talend是英文界面(osgi.nl = zh-CN)

我的计算机的语言环境是法国(数字123,45)

Gab*_*e B 5

您至少有两种方法:

  1. 如果您的格式不太特殊(例如,情况如此),则可以使用tFileInputDelimited的高级分隔符参数。您会发现它是第一个高级参数。激活它后,您可以将分隔符设置为千位和十进制。如您所见,默认值为“。” 代表小数,“,”代表数千。 tFileDelimitedInput高级参数

  2. 如果你的格式非常奇怪,然后读出数字字段作为字符串,并将其转换为一个双重的TMAP像一个纯Java解决方案这个。