更新时间:2024-11-29 GMT+08:00

CSV文件输入

概述

“CSV文件输入”算子,用于导入所有能用文本编辑器打开的文件。

输入与输出

  • 输入:文本文件
  • 输出:多个字段

参数说明

表1 算子参数说明

参数

含义

类型

是否必填

默认值

分隔符

CSV文件的列分隔符,用于分隔每行的数据。

string

,

换行符

用户根据数据实际情况,填写字符串作为换行符。支持任何字符串。默认使用操作系统的换行符。

string

\n

文件名是否作为字段

自定义一个字段,以当前数据所在的文件名作为该字段值。

string

绝对路径

配置“文件名是否作为字段”引用文件名环境,选中单选框时是带绝对路径的文件名;不选中单选框时是不带路径的文件名。

boolean

不选中

验证输入字段

是否检验输入字段与值的类型匹配情况,值为“NO”,不检查;值为“YES”,检查。若不匹配则跳过该行。

enum

YES

输入字段

配置输入字段的相关信息:

  • 位置:源文件每行被列分隔符分隔后,目标字段对应的位置,从1开始编号。
  • 字段名:配置字段名。
  • 类型:配置字段类型。
  • 数据格式:字段类型为“DATE”“TIM”E或“TIMESTAMP”时,需指定特定时间格式,其他字段类型指定无效。时间格式如:“yyyyMMdd HH:mm:ss”
  • 长度:配置字段长度,字段值太长则按配置的长度截取,类型为“CHAR”时实际长度不足则空格补齐,类型为“VARCHAR”时实际长度不足则不补齐。

map

数据处理规则

  • 将每行数据按照指定的分隔符,分隔成多个字段,供之后的转换算子使用。
  • 当字段的值与实际的类型不匹配时,该行数据会成为脏数据。
  • 输入字段列数不等于原始数据实际包含字段列数,该行数据会保存为脏数据。

样例

源文件如下图:

配置“CSV文件输入”算子,分隔符为“,”,生成两个字段A、B。

将A、B输出,结果如下: