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

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,如需转载请自行联系原作者

上一篇:JAVA 设计模式 访问者模式


下一篇:SQL Server 可更新订阅中有行筛选的同步复制移除项目而不重新初始化所有订阅!