golang 转换时间戳到字符串函数 支持秒和毫秒时间戳 转换到自定字符串

golang 转换时间戳到字符串函数 支持秒和毫秒时间戳 转换到自定字符串, 自动判断是秒还是毫秒时间戳, 废话不多说,直接上代码:

Go 复制代码
// 格式化时间戳到字符串
// ts 时间戳 支持秒 10位, 毫秒 13位
// layout 时间格式 如果为空,则默认使用 time.RFC3339 作为格式 "2006-01-02T15:04:05Z07:00"
// 格式后的时间字符串
// @author tekintian <tekintian@gmail.com>
func TsToStr(ts int64, layout string) string {
	var t time.Time
	if ts < 9999999999 { // 当前的时间戳是秒 秒的时间戳最长10位, 毫秒的时间戳长度为13位
		t = time.Unix(ts, 0)
	} else {
		t = time.UnixMilli(ts)
	}
	// 格式化时间字符串
	if layout == "" {
		layout = time.RFC3339
	}
	return t.Format(layout)
}

ps: 如果希望返回的时间字符串为默认的格式 time.RFC3339 即 "2006-01-02T15:04:05Z07:00" , 则第二个参数直接传递空字符串即可,即: TsToStr(1722657237,"")

更多字符串相关函数库安装: go get github.com/tekintian/strutils

使用 strutils.TsToStr(1722683285997,"") // 输出 "2024-08-03T19:08:05+08:00"

相关推荐
多敲代码防脱发22 分钟前
Spring进阶(容器实现)
java·开发语言·后端·spring
可视之道30 分钟前
工业物联网前端技术栈选型与性能优化实战
后端
星辰_mya35 分钟前
彩云之上——[特殊字符]的架构师
java·后端·微服务·面试·架构
小新同学^O^37 分钟前
简单学习 --> 模型微调
开发语言·人工智能·python·模型微淘
水云桐程序员38 分钟前
C++变量的概念及用法
开发语言·c++
LucianaiB1 小时前
参加高德 AI 发布会的一点感受:地图,正在变成 AI 的行动入口
后端
属于自己的天空1 小时前
一个文件让 Claude Code 理解你的项目:CLAUDE.md 从入门到精通
后端
知识汲取者1 小时前
巨量引擎营销 API 完整文档
开发语言·数据库·python
jiangbo_dev1 小时前
还在手搓分布式事务?我把 Saga + Outbox 模板化后,新服务接入从 5 天压到 1 天
后端
BING_Algorithm1 小时前
深入理解JVM垃圾回收
jvm·后端·面试