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"

相关推荐
疯狂的程序猴几秒前
iOS 多技术栈混淆实现,跨平台 App 混淆拆解与组合
后端·ios
是Smoky呢11 分钟前
springAI+向量数据库+RAG入门案例
java·开发语言·ai编程
法欧特斯卡雷特31 分钟前
从 Kotlin 编译器 API 的变化开始: 2.3.20
android·后端·开源
Java水解41 分钟前
一篇文章让你彻底弄懂Spring Boot 自动配置原理详解
spring boot·后端
_Twink1e43 分钟前
[算法竞赛]九、C++标准模板库STL常用容器大全
开发语言·c++
Java水解1 小时前
【MYSQL】MYSQL学习的一大重点:MYSQL数据类型
后端·mysql
架构师沉默1 小时前
为什么 Dubbo 从 ZooKeeper 转向 Nacos?
java·后端·架构
用户8307196840821 小时前
Spring Prototype Bean的四种正确使用方式
java·spring boot·后端
代码丰1 小时前
一篇讲透:Spring Boot + Redisson + 注解 + AOP 实现接口限流(可直接落地)
后端
永恒_顺其自然1 小时前
Java Web 传统项目异步分块上传系统实现方案
java·开发语言·前端