fileReadLine

Version 23.4.8843


fileReadLine


逐行读取并枚举输入文件的内容,并将数据作为输出属性推出。

必需的参数

  • file: 读取的文件名称。

可选的参数

  • separator:确定每个换行的字符分隔符。 默认值为换行符 (\n)。
  • encoding:要使用的编码。 允许的值由所使用的 JVM/OS 确定。 大多数操作系统和 JVM 通常支持的编码值包括UTF-8ASCIIBASE64windows-1252ISO-8859-2。 默认为UTF-8

输出属性

  • file:line: 文件的行号。
  • file:data:输入文件中的数据。

示例

此示例仅替换第一行中的一些数据。

<!-- 创建输入项并设置文件属性-->
<arc:set attr="input.file" value="[FilePath]" />
<!-- 初始化该项目以保存减去第一行的文件数据 -->
<arc:set attr="restof.data" value="" />
<!-- 调用fileReadLine操作并传入输入项-->
<arc:call op="fileReadLine" in="input" out="result" >
  <!-- 一旦操作到达文件中的第一行,就执行替换 -->
  <arc:if exp="[result.file:line] == 1">
    <arc:set attr="first.line" value="[result.file:data | replace('ArcESB','CData Arc')]" />
    <arc:else>
      <!-- 将输出文件的数据设置为修改后的第一行和文件数据其余部分的串联 -->
      <arc:set attr="output.data" value="[first.line][restof.data]\n[result.file:data]" />
    </arc:else>
  </arc:if> 
</arc:call>
<arc:set attr="output.filepath" value="[FilePath]" />
<arc:push item="output" />