我有一个 csv 文件,其中包含数十万行,下面是一些示例行..,
1,Ni,23,28-02-2015 12:22:33.2212-02
2,Fi,21,28-02-2015 12:22:34.3212-02
3,Us,33,30-03-2015 12:23:35-01
4,Uk,34,31-03-2015 12:24:36.332211-02
我需要获取日期时间格式错误的 csv 数据的最后一列。所以我需要获得默认的日期时间格式("YYYY-MM-DD hh:mm:ss[.nnn]"
)来自数据的最后一列。
我尝试了以下脚本来从中获取行并写入流文件。
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[1:]:
outputStream.write(line + "\n")
flowFile = session.get()
if (flowFile != None):
flowFile = session.write(flowFile,PyStreamCallback())
flowFile = session.putAttribute(flowFile, "filename", flowFile.getAttribute('filename'))
session.transfer(flowFile, REL_SUCCESS)
但我无法找到一种方法将其转换为如下输出。
1,Ni,23,28-02-2015 12:22:33.221
2,Fi,21,29-02-2015 12:22:34.321
3,Us,33,30-03-2015 12:23:35
4,Uk,34,31-03-2015 12:24:36.332
我已经和我的朋友(谷歌)检查了解决方案,但仍然找不到解决方案。
谁能指导我将这些输入数据转换为我所需的输出?