【发布时间】:2021-08-24 13:02:02
【问题描述】:
我有一个以 csv 文件为源的数据流。 NewPositive 列是一个字符串,它包含以欧洲风格格式化的数字,以点作为千位分隔符,例如 1.019 表示 1019
如果我使用 toInteger 函数通过 toInteger(NewPositive,'#.###','de') 将我的 NewPositive 列转换为 int,我只会得到千位密码,例如 1 表示 1.019 而不是其余的。为什么?为了测试,我尝试创建一个常量列: toInteger('1.019','#.###','de') 并按预期给出 1019。那么为什么该功能不适用于我的专栏?该列被修剪,如果我将第一个值与相等函数进行比较:equals('1.019',NewPositive) 返回 true。
请注意:我知道通过 toInteger(replace(NewPositive,'.',''))创建解决方法非常容易,但我想学习如何将 toInteger 函数与 locale 和 format 参数一起使用。
这里是示例数据:
Dato;NewPositive 2021-08-20;1.234 2021-08-21;1.789
【问题讨论】: