gpt4 book ai didi

header - NiFi : Remove fixed number of header lines from file

转载 作者:行者123 更新时间:2023-12-05 00:53:06 26 4
gpt4 key购买 nike

我正在处理一个文件,我想删除(修剪)第一个 X 标题行以仅保留数据,可能避免使用正则表达式。

谢谢

最佳答案

您可以使用 Nifi 中的 ExecuteScript 处理器删除前 X 个标题行。

以下是我为自己编写的 Jython 脚本示例:

import json
import java.io
from org.apache.commons.io import IOUtils
from java.nio.charset import StandardCharsets
from org.apache.nifi.processor.io import StreamCallback

class PyStreamCallback(StreamCallback):
def __init__(self):
pass
def process(self, inputStream, outputStream):
text = IOUtils.readLines(inputStream, StandardCharsets.UTF_8)
for line in text[3:]:
outputStream.write(line + "\n")

flowFile = session.get()
if (flowFile != None):
flowFile = session.write(flowFile,PyStreamCallback())
flowFile = session.putAttribute(flowFile, "filename", flowFile.getAttribute('filename').split('.')[0]+'_translated.json')
session.transfer(flowFile, REL_SUCCESS)

这显然删除了前 3 行,但您可以轻松修改它以删除更多或更少的行。

希望有帮助。

关于header - NiFi : Remove fixed number of header lines from file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41640924/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com