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"

相关推荐
老歌老听老掉牙3 分钟前
PyQt5中RadioButton互斥选择的实现方法
开发语言·python·qt
一路往蓝-Anbo5 分钟前
C语言从句柄到对象 (四) —— 接口抽象:从 Switch-Case 到通用接口
c语言·开发语言·stm32·嵌入式硬件
csbysj20206 分钟前
WebPages 数据库:构建现代网页管理的基石
开发语言
lzhdim7 分钟前
C#性能优化:从入门到入土!这10个隐藏技巧让你的代码快如闪电
开发语言·性能优化·c#
不会写代码的里奇9 分钟前
从零开发基于DeepSeek的端侧离线大模型语音助手:全流程指南
c++·后端·音视频
沐知全栈开发9 分钟前
C 标准库 - `<stdarg.h>`
开发语言
两个人的幸福online9 分钟前
给cocos 3.8 消息控制器
开发语言·javascript·ecmascript
廋到被风吹走10 分钟前
【JAVA】【JDK】java8版本之后各个版本调整
java·开发语言
怪我冷i13 分钟前
GORM 的 Migration API
数据库·postgresql·golang·ai编程·ai写作
不能放弃治疗15 分钟前
发消息逻辑写在MySQL事务中,导致消费逻辑Bug
后端