英文:
Golang: extract time from datetime string
问题
我正在尝试从一个golang的日期时间字符串中提取时间,以下是我的代码:
func GetTimeStr(d string) string {
layout := "2014-09-12T11:45:26"
d = d[:len(layout)]
t, _ := time.Parse(layout, d)
return t.Format("15:04:05")
}
我的输入看起来像这样:
2022-09-23T16:28:19.846821Z
然而,我得到的结果是 00:00:00
,我做错了什么?
英文:
I am trying to extract the time from a datetime string in golang, here is what I have:
func GetTimeStr(d string) string {
layout := "2014-09-12T11:45:26"
d = d[:len(layout)]
t, _ := time.Parse(layout, d)
return t.Format("15:04:05")
}
My input look like this:
2022-09-23T16:28:19.846821Z
However I am getting 00:00:00
, what am I doing wrong?
答案1
得分: 2
你的布局字符串是错误的。尝试进行更改:
package main
import (
"fmt"
"time"
)
func main() {
fmt.Println(GetTimeStr("2022-09-23T16:28:19.846821Z"))
}
func GetTimeStr(d string) string {
layout := "2006-01-02T15:04:05"
d = d[:len(layout)]
t, _ := time.Parse(layout, d)
return t.Format("15:04:05")
}
这段代码的作用是将给定的时间字符串转换为指定格式的时间字符串。
英文:
Your layout string is wrong. Try changing it:
package main
import (
"fmt"
"time"
)
func main() {
fmt.Println(GetTimeStr("2022-09-23T16:28:19.846821Z"))
}
func GetTimeStr(d string) string {
layout := "2006-01-02T15:04:05"
d = d[:len(layout)]
t, _ := time.Parse(layout, d)
return t.Format("15:04:05")
}
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论