且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

用nifi executescript 生成3小时间隔字符串

更新时间:2022-08-12 22:26:36

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import java.io
from datetime import datetime
from org.apache.commons.io import IOUtils
from java.nio.charset import StandardCharsets
from org.apache.nifi.processor.io import StreamCallback
 
class GetDate(StreamCallback):
  def __init__(self):
        pass
  def process(self, inputStream, outputStream):
    #text = IOUtils.toString(inputStream, StandardCharsets.UTF_8)
    dt = ''
    months = [14710]
    for year in range(1990,2016):
        for i in range(len(months)):
            dt1 = datetime(year, months[i], 1000)
            if months[i] == 10:
                dt2 = datetime(year+111000)
            else:
                dt2 = datetime(year, months[i]+31000)
            dt += dt1.strftime("%Y-%m-%d %H:%M:%S") + ',' + dt2.strftime("%Y-%m-%d %H:%M:%S") + ";"
    outputStream.write(dt)
     
flowFile = session.create()
if (flowFile != None):
  flowFile = session.write(flowFile, GetDate())
  #flowFile = session.putAttribute(flowFile, "filename", flowFile.getAttribute('filename').split('.')[0]+'_translated.json')
session.transfer(flowFile, REL_SUCCESS)
session.commit()



本文转自疯吻IT博客园博客,原文链接:http://www.cnblogs.com/fengwenit/p/6170180.html,如需转载请自行联系原作者