SplitText
描述:
通过设置拆分行数和大小参数将文本文件拆分为多个较小的文本文件。每个输出拆分文件将包含的行数或字节数不超过配置的行数或字节数。 如果同时设置《拆分行》和《拆分大小》,则以最小的那个拆分值为基准。如果分片的第一行超过了《拆分大小》,则该行将直接输出,其结果就是超过了设置值,而忽略设置。此组件还允许指定每个拆分都可包含标题行。 可以通过指定应构成标题的行的数量或使用标题标记与读取行匹配来计算标题行。如果发生这种匹配,则相应的行将被视为标题。请记住,在头标记匹配第一次失败时,将不再执行任何匹配,其余数据将被解析为给定拆分的常规行。如果在计算标题头之后没有更多的数据,那么得到的拆分将只包含标题头行。
标签:
split, text, 拆分, 文本, 切割
参数:
如下列表中,必填参数则标识为加粗. 其他未加粗参数,则表示为可选参数。表中同时提到参数默认值设置.
名字 | 默认值 | 允许值列表 | 描述 |
---|---|---|---|
拆分行数 | 将添加到每个拆分文件中的行数,不包括标题头行。 当值为0时。则要求必须设置《拆分大小》,而不考虑行数 | ||
拆分大小 | 每个拆分文件的大小,包含标题头行。注意:如果一行超过此属性(包括标题,如果适用),则该行将直接输出,而超过该参数设置 | ||
标题行数 | 0 | 应视为标题部分的行数;标题行将复制到所有拆分文件中 | |
标题行标记 | 数据文件行上表示标题行的第一个字符。当《标题行数》为非零时,将忽略此值。不包含标题行标记字符的第一行和所有后续行被视为非标题行。 | ||
删除尾部换行符 | 删除 | - 删除 - 保留 | 是否删除每个拆分文件末尾的换行符。如果您打算稍后合并拆分的文件,这应该选择“保留”。如果选择“删除”,并且生成的数据流仅包含“空行”(即仅包含 |
和 字符),则不会生成数据流输出。但是,请注意,如果指定了标题行,则结果流文件将永远不会为空,因为它将由标题行组成,因此可能会发出只包含标题行的数据流。|
连线:
名字 | 描述 |
---|---|
failure | 如果由于某种原因无法拆分文件,则原始文件将路由到此连线,而不会路由到其他连线 |
original | 当原始输入文件成功拆分为一个或多个文件时,它将被路由到此连线 |
splits | 当输入文件成功拆分为一个或多个拆分文件时,拆分文件将路由到此连线 |
读取属性:
未提供。
写入属性:
名字 | 描述 |
---|---|
text.line.count | 从原始流文件复制到此数据流中的文本行数 |
fragment.size | 从原始流文件复制到此数据流中的字节数,包括在每个拆分数据流中标题头(如果适用)。 |
fragment.identifier | 从同一父数据流生成的所有拆分数据流都将添加具有相同的随机生成的UUID值。 |
fragment.index | 一个向上的数字,指示从单个父数据流创建的拆分数据流序号 |
fragment.count | 从父数据流生成的拆分数据流总数 |
segment.original.filename | 父数据流的文件名 |
状态管理:
该组件不保存状态。
限制:
该组件没有限制
输入流要求:
组件必须提供输入流。
系统资源考量:
资源 | 描述 |
---|---|
MEMORY | 数据流的属性存储在内存中,而不是数据流的内容。如果由于内容的大小或如何将内容配置为拆分而生成许多拆分,则可能需要使用两阶段方法来避免过度使用内存。 |