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"

相关推荐
故事和你91几秒前
洛谷-数据结构2-1-二叉堆与树状数组1
开发语言·数据结构·c++·算法·动态规划·图论
挨踢ren2 分钟前
C++虚函数:从基础到高阶
java·开发语言·jvm
hhb_6189 分钟前
C语言核心技术难点梳理与实战案例解析
c语言·开发语言
海参崴-12 分钟前
C++ STL篇 红黑树的模拟实现
开发语言·c++
Dshuishui18 分钟前
我用 Claude Code 做了一个学术论文搜索工具
开发语言·人工智能·python·pip·uv
Resky081819 分钟前
ReentrantReadWriteLock 深度解析
java·开发语言·juc
追逐时光者27 分钟前
2026 年 .NET 客户端常用 MVVM 框架推荐
后端·.net
_Evan_Yao32 分钟前
长上下文模型(1M token)会杀死RAG吗?—— 理性分析
人工智能·后端
Rik44 分钟前
Cursor Rules 深度玩法:从全局配置到项目级规则,让 AI 真正理解你的项目
前端·后端
TYKJ0231 小时前
Day4、10个排查网络问题的命令行工具:每个配真实输出,建议收藏
后端