根据提供的日志信息,第一行中的时间格式为 “2024/05/22 15:43:37”,第二行和第三行中的时间格式为 “May 22 15:43:37”。你可以使用Go语言中的time.Parse
方法将这些不同格式的时间字符串解析为time.Time
类型,然后再按照需要的格式进行格式化输出。
以下是一个示例代码:
package main
import (
"fmt"
"time"
)
func main() {
logTime1 := "2024/05/22 15:43:37"
logTime2 := "May 22 15:43:37"
t1, err := time.Parse("2006/01/02 15:04:05", logTime1)
if err != nil {
fmt.Println("Failed to parse log time1:", err)
return
}
t2, err := time.Parse("Jan 02 15:04:05", logTime2)
if err != nil {
fmt.Println("Failed to parse log time2:", err)
return
}
formattedTime1 := t1.Format("2006-01-02T15:04:05Z07:00") // 转换为RFC3339格式
formattedTime2 := t2.Format("2006-01-02T15:04:05Z07:00") // 转换为RFC3339格式
fmt.Println(formattedTime1)
fmt.Println(formattedTime2)
}
在上述代码中,我们使用了两个不同的时间解析模板来分别解析两个不同格式的时间字符串。然后,通过调用Format
方法将解析后的时间转换为RFC3339格式(”2006-01-02T15:04:05Z07:00”)。
运行该程序,你将会得到类似以下输出:
2024-05-22T15:43:37+08:00
0000-05-22T15:43:37Z
请注意,第二个时间的年份在输出中显示为”0000”,这是因为日志中没有提供年份信息。
内容由零声教学AI助手提供,问题来源于学员提问