Skip to content

时间戳转日期

函数名:time_时间戳转日期 / tm_TimestampToDate

功能描述

将 Unix 时间戳转换为格式化的日期时间字符串。支持 10 位秒级和 13 位毫秒级时间戳,自动识别并转换为本地时间。

会员等级:🟢 免费版(Free)

语法

excel
=time_时间戳转日期(时间戳, 格式)

参数

参数名类型必填默认值说明
时间戳DoubleUnix 时间戳(10 位秒级或 13 位毫秒级)
格式Stringyyyy-MM-dd HH:mm:ss日期时间格式字符串,遵循 .NET 标准日期格式

返回值

String - 格式化后的日期时间字符串。时间戳无效时返回 "无效的时间戳"

使用示例

秒级时间戳转换

公式

excel
=time_时间戳转日期(1672531199)

结果

2023-01-01 00:59:59

毫秒级时间戳转换及自定义格式

公式

excel
=time_时间戳转日期(1672531199123, "yyyy/MM/dd HH:mm")

结果

2023/01/01 00:59

仅返回日期部分

公式

excel
=time_时间戳转日期(1672531199, "yyyy-MM-dd")

结果

2023-01-01

技术说明

  • 时间戳位数判断:大于等于 1e12(即 1000000000000)视为 13 位毫秒级时间戳,否则视为 10 位秒级时间戳。
  • 毫秒级使用 DateTimeOffset.FromUnixTimeMilliseconds 转换,秒级使用 DateTimeOffset.FromUnixTimeSeconds 转换。
  • 转换后调用 .ToLocalTime() 转为本地时区时间。
  • 格式字符串遵循 .NET 标准日期时间格式,如 yyyy-MM-ddHH:mm:ssyyyy年MM月dd日 等。

错误处理

错误场景返回值
时间戳无效或超出范围无效的时间戳
正常秒级时间戳格式化日期时间字符串
正常毫秒级时间戳格式化日期时间字符串

基于源代码最新版本文档