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"

相关推荐
Rain的Java大神之路4 分钟前
如何保证接口幂等
java·经验分享·后端·面试·架构
木木爱研究5 分钟前
elpis-里程碑四-基于Vue完成动态组件库建设
前端·后端
一水行5 分钟前
博客评论系统搭建回顾
javascript·后端
吴声子夜歌5 分钟前
Java——数组和集合(一)
java·开发语言
Jesse_EC7 分钟前
一个看不见的字符——CRLF 如何让我的 Docker 初始化脚本"静默失踪"
java·后端
学长毕业设计12 分钟前
基于SpringBoot的社区鲜奶订购系统的设计与实现(源码+文档+讲解视频)
java·spring boot·后端
2601_9621741712 分钟前
小试牛刀-SpringBoot集成SOL链
数据库·spring boot·后端
呆呆敲代码的小Y13 分钟前
Lua 上值(UpValue)
开发语言·junit·lua·lua上值·upvalue
郝学胜_神的一滴16 分钟前
C++11 工程级应用 06:自己造一个类似Python的Range迭代器
c++·后端
张炯炯16 分钟前
个人RAG上线翻车实录-记一次 API 延迟排查
后端