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

如何将Unix微秒级UTC时间戳转换为Julia DateTime类型

Unix微秒时间戳转Julia DateTime实现方案

Golang输出的Unix微秒时间戳以1970-01-01 00:00:00 UTC为计数起点,以累计总微秒数作为时间值,示例值为1652681499679534,转换为Julia标准库DateTime类型的无精度损失方案如下:

实现代码

依赖Julia标准库Dates,从Unix纪元起点累加对应微秒时长即可:

using Dates

# 替换为实际获取到的微秒时间戳
unix_micro_ts = 1652681499679534
dt = DateTime(1970, 1, 1) + Microsecond(unix_micro_ts)

校验与注意点

  • 代入示例值运行后得到的结果为2022-05-16T06:11:39.679,与Golang侧调用time.UnixMicro(1652681499679534)的输出完全一致。
  • 上述代码返回的是UTC时区的DateTime对象,和时间戳的计数基准匹配,不会引入时区偏移误差。如果需要本地时区时间,可在拿到UTC时间后统一做时区转换,不要在时间戳换算阶段手动加偏移量,避免计算错误。
  • 尽量不要使用unix2datetime(unix_micro_ts / 1_000_000)的写法,当时间戳数值跨度极大时,浮点除法可能产生精度丢失,时间周期累加的写法稳定性更高。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.03 01:21:47