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"

相关推荐
理人综艺好会2 分钟前
Go 语言测试综合指南
开发语言·golang·log4j
BingoGo2 分钟前
PHP 的问题不在语言本身,而在我们怎么写它
后端·php
froginwe113 分钟前
《Viewport》详解:网页布局中的核心概念
开发语言
HashFlag4 分钟前
单元测试-go-sqlmock
golang·单元测试·sqlmock
量子炒饭大师5 分钟前
【C++入门】Cyber尖层的虚实重构—— 【类与对象】类型转换
开发语言·c++·重构·类型转换·隐式转换·explicit·类与对象
苏琢玉6 分钟前
用 Go 实现一个可长期运行的 GitHub Webhook 服务实践
golang·github
wula199410 分钟前
C# Revit二次开发 地层工程量统计
开发语言·c#
qq_2562470511 分钟前
Copilot “Plan Mode“ + 多模型协同实战:让复杂项目开发丝滑起飞
后端
范特西.i13 分钟前
QT聊天项目(4)
开发语言·qt
lly20240613 分钟前
PostgreSQL DELETE 操作详解
开发语言