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"

相关推荐
货拉拉技术11 分钟前
货拉拉海豚平台-大模型推理加速工程化实践
人工智能·后端·架构
神奇小汤圆25 分钟前
请不要自己写,Spring Boot非常实用的内置功能
后端
神奇小汤圆41 分钟前
突破Netty极限:基于Java 21 FFM API手写高性能网络通信框架
后端
Java编程爱好者1 小时前
给 Spring Boot 接口加了幂等保护:Token 机制 + 结果缓存,一个注解搞定
后端
Java编程爱好者1 小时前
字节二面:Redis 能做消息队列吗?怎么实现?
后端
爱找乐子的李寻欢1 小时前
防止字符串 ID 隐式转换导致的数据越权漏洞
后端
JavaGuide1 小时前
字节二面:Redis 能做消息队列吗?怎么实现?
redis·后端
暮色妖娆丶3 小时前
不过是吃了几年互联网红利罢了,我高估了自己
java·后端·面试
UrbanJazzerati3 小时前
Python Scrapling:小白也能轻松掌握的现代网页抓取工具
后端·面试
老张的码3 小时前
飞书 × OpenClaw 接入指南
人工智能·后端