Apachi Nifi问题,仅读取并保存选定列到文件。
创始人
2024-09-06 20:00:31
0

要仅读取和保存选定列到文件,您可以使用Apache Nifi的ExecuteScript处理器与Groovy脚本来实现。以下是一个示例代码片段:

import org.apache.commons.io.IOUtils
import org.apache.nifi.processor.io.OutputStreamCallback

// 获取输入流中的数据
def flowFile = session.get()
if (!flowFile) return

session.read(flowFile, { inputStream ->
    def inputText = IOUtils.toString(inputStream, 'UTF-8')

    // 选择您要提取的列
    def selectedColumns = [0, 2, 4] // 示例选择第1、第3和第5列

    // 提取选定列的数据
    def outputText = inputText.split('\n').collect { line ->
        def columns = line.split(',')
        selectedColumns.collect { columns[it] }.join(',')
    }.join('\n')

    // 将提取的数据写入输出流
    flowFile = session.write(flowFile, { outputStream ->
        outputStream.write(outputText.getBytes('UTF-8'))
    } as OutputStreamCallback)
})

session.transfer(flowFile, REL_SUCCESS)

将此代码片段放入ExecuteScript处理器的Script Body中,并将Script Language设置为Groovy。然后,您可以配置适当的输入和输出关系,以及其他处理器以及其他处理器来处理数据流。

此脚本将从输入流中读取数据,提取选定的列,并将提取的数据写入输出流,以便保存到文件中。您可以通过修改selectedColumns数组来选择不同的列。请记住,数组是从零开始的索引。

请注意,此示例假设输入数据是以逗号分隔的文本格式,并且每行都具有相同的列数。如果您的数据格式不同,请根据您的情况进行修改。

相关内容

热门资讯

透视辅助!微扑克中牌率(wep... 透视辅助!微扑克中牌率(wepoker)外挂透明挂辅助挂(透视)透牌教程(有挂方式)-哔哩哔哩1、很...
一分钟教会你!云扑克(WepO... 一分钟教会你!云扑克(WepOke)外挂透明挂辅助APP(辅助挂)细节方法(有挂详细)-哔哩哔哩;1...
科普常识!欢乐棋牌(wepOk... WePoker透视辅助版本稳定性对比与推荐‌:科普常识!欢乐棋牌(wepOkE)外挂透明挂辅助工具(...
今日焦点!鱼扑克辅助(wePO... 今日焦点!鱼扑克辅助(wePOKE)外挂透明挂辅助脚本(辅助挂)详细教程(有挂教学)-哔哩哔哩;鱼扑...
大家学习交流(轰趴大菠萝)外挂... 《大家学习交流(轰趴大菠萝)外挂透明挂辅助神器(透视)软件透明挂(2025已更新)(哔哩哔哩)》 轰...
一分钟快速了解!cloudpo... 1、一分钟快速了解!cloudpoker云扑克(WEpoke)外挂透明挂辅助挂(透视)解密教程(有挂...
重大通报(wpk插件)外挂透明... 重大通报(wpk插件)外挂透明挂辅助软件(透视)透视辅助(2021已更新)(哔哩哔哩);(需添加指定...
透视辅助!wepoke数据(w... 透视辅助!wepoke数据(wepoker)外挂透明挂辅助工具(透视)必胜教程(有挂方法)-哔哩哔哩...
重大发现(wepokeai)外... 重大发现(wepokeai)外挂透明挂辅助工具(透视)德州ai机器人(有人有挂)-哔哩哔哩1、很好的...
透明神器(微扑克钻石)外挂透明... 透明神器(微扑克钻石)外挂透明挂辅助脚本(透视)透视辅助(2022已更新)(哔哩哔哩);玩家在微扑克...