php小编草莓今天为大家介绍Go语言中的日期格式。在Go语言中,日期和时间的处理是非常重要的,而日期的格式化是我们经常需要进行的操作之一。Go语言提供了一种简单而强大的日期格式化方式,可以满足我们各种各样的需求。无论是将日期转换为字符串,还是将字符串解析为日期,Go语言都提供了相应的函数和方法来进行操作。接下来,让我们一起来了解一下Go语言中日期格式的相关知识吧!
问题内容
我需要将 date.time 对象(utc 字符串)格式化为以下格式“dd/mm/yyyy hh:mm:ss”。我需要循环遍历事务数组并更改数组中每个事务的 statusdatetime。
我在尝试该格式时尝试了以下方法,但它根本不会改变日期格式。
for _, Transaction := range Transactions {
Transaction.StatusDateTime.Format("2006-01-02T15:04:05")
}
登录后复制
我做错了什么?
解决方法
这个问题有点混乱。让我来分解一下。
我需要将 date.time 对象(utc 字符串)格式化为以下格式“dd/mm/yyyy hh:mm:ss”。
首先,我认为你的意思是一个 time.time
对象。 go 中没有 date.time
对象这样的东西。
其次, time.time
对象是一个对象(无论如何,一个结构体实例)。它不是“utc 字符串”。它根本不是一根绳子!它是存储在内存中的任意值。
现在,通过调用 time.time
的 format
方法,您就走上了正确的道路。但正如您通过阅读该方法的 godoc 所看到的,它返回一个字符串。您的代码示例忽略(因此丢弃)该返回值。
您需要将该值分配到某处,然后大概用它做一些事情:
for _, Transaction := range Transactions {
formatted := Transaction.StatusDateTime.Format("2006-01-02T15:04:05")
fmt.Println("the formatted time is", formatted)
/* Or store the formatted time somewhere, etc */
}
登录后复制
我在尝试该格式时尝试了以下方法,但它根本不会改变日期格式。
不是要在这里打败一匹死马,但你是对的,这根本不会改变格式...或者更准确地说,time.time
没有可以改变的格式第一名。
以上就是Go 中的日期格式的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!