You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NiFi中epoch时间戳转正常时间戳输出1970年错误问题咨询

Epoch秒级时间戳转可读时间错误修复方案

问题根因

你使用${field.value:format('MM/dd/yyyy HH:mm:ss.SSS')}得到1970年错误日期的核心原因是:待转换的1625777940是秒级Epoch时间戳,而对应格式转换函数默认要求传入的时间参数为毫秒级,直接传入秒级数值会被识别为仅距离1970-01-01过去了16亿多毫秒(约18天),自然输出错误的早期日期。

修复方法

调用格式转换前先将秒级时间戳转为毫秒级即可,修改后的表达式如下:

${field.value:toNumber():multiply(1000):format('MM/dd/yyyy HH:mm:ss.SSS')}

表达式逻辑说明

  • toNumber():先将字段值转为数值类型,避免字符串类型无法执行算术运算
  • multiply(1000):把秒级时间戳放大1000倍转为毫秒级,适配格式转换函数的输入要求
  • 后续格式参数可保持你原本需要的输出规则不变

验证结果

你提供的示例时间戳1625777940经过上述表达式转换后,输出结果为07/08/2021 15:39:00.000,为正确时间值。

注意:如果后续处理的是13位的毫秒级时间戳,无需添加multiply(1000)步骤,直接调用format函数即可。

内容的提问来源于stack exchange,提问作者KReddy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 16:36:02