Golang中如何将字符串转换为时间

Golang中如何将字符串转换为时间 你好,是否可以将字符串 “07:30:45AM” 转换为时间类型?

3 回复

更多关于Golang中如何将字符串转换为时间的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


是的,完全可以使用 time.Parse 来实现。

https://golang.org/pkg/time/#Parse

在Go语言中,可以使用time包中的Parse函数将字符串转换为时间类型。对于格式"07:30:45AM",需要指定对应的布局字符串"03:04:05PM"。

示例代码:

package main

import (
    "fmt"
    "time"
)

func main() {
    timeStr := "07:30:45AM"
    
    // 解析时间字符串
    t, err := time.Parse("03:04:05PM", timeStr)
    if err != nil {
        fmt.Printf("解析错误: %v\n", err)
        return
    }
    
    fmt.Printf("解析结果: %v\n", t)
    fmt.Printf("格式化输出: %v\n", t.Format("15:04:05"))
}

输出结果:

解析结果: 0000-01-01 07:30:45 +0000 UTC
格式化输出: 07:30:45

注意:

  • 布局字符串"03:04:05PM"中的03表示12小时制的小时,04表示分钟,05表示秒,PM表示上午/下午标识
  • 解析后的时间会包含默认的日期部分(0000-01-01),因为只提供了时间信息
  • 如果需要处理日期和时间,可以使用完整的布局字符串如"01/02 03:04:05PM '06 -0700"
回到顶部