本文主要是介绍golang时间转换工具 将ISO 8601时间转为当地时间戳(13位 单位毫秒),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
golang 时间转换工具 将ISO 8601时间转为当地时间戳(13位 单位毫秒)
获得了一个字符串的时间,而且是ISO 8601规范的时间格式,现转为当地(例如中国北京的时间戳)
工具代码如下:
/**remark:时间转换工具 将ISO 8601时间转为当地时间戳(13位 毫秒)author:曾冠男*/
func transformTimestrToTimestamp(timestr string)int64{//2006-01-02 15:04:05 是golang的时间模板,据说是golang语言的诞生时间,2006-01-02 15:04:05类似于我们熟悉的YYYY-MM-dd HH:mm:ssresult, err := time.ParseInLocation("2006-01-02T15:04:05+0800", timestr,time.Local)//如果错误则退出if(err != nil){fmt.Println(err)return -1}//转为13位时间戳 乘以1000是因为原来是秒单位,乘以之后则是13位毫秒时间戳单位return result.Unix()*1000
}
可以参考如下例子:
package mainimport ("fmt""time"
)func main() {resultTime := "2021-05-10T17:49:51+0800"timestamp := transformTimestrToTimestamp(resultTime)fmt.Println(timestamp)
}/**remark:时间转换工具 将ISO 8601时间转为当地时间戳(13位 毫秒)author:曾冠男
*/
func transformTimestrToTimestamp(timestr string)int64{//2006-01-02 15:04:05 是golang的时间模板,据说是golang语言的诞生时间,2006-01-02 15:04:05类似于我们熟悉的YYYY-MM-dd HH:mm:ssresult, err := time.ParseInLocation("2006-01-02T15:04:05+0800", timestr,time.Local)//如果错误则退出if(err != nil){fmt.Println(err)return -1}//转为13位时间戳 乘以1000是因为原来是秒单位,乘以之后则是13位毫秒时间戳单位return result.Unix()*1000
}
输出结果为:
1620640191000
OK!问题解决!不会的给我私信!
觉得有帮助的可以关注一波!经常分享编程踩坑经验!
这篇关于golang时间转换工具 将ISO 8601时间转为当地时间戳(13位 单位毫秒)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!