gpt4 book ai didi

go - 在 GO 中解析时间时出现奇怪的错误消息

转载 作者:数据小太阳 更新时间:2023-10-29 03:12:20 25 4
gpt4 key购买 nike

我尝试在 go 中将字符串解析为时间,这是我所做的:

dateTime := fmt.Sprintf("%s %s CST", dateValue, timeValue)
date, err := time.Parse("2006-1-2 150405 MST", dateTime)

我收到以下错误信息:

解析时间“2012-4-9 174031 CST”为“2006-1-2 150405 MST”:无法将“2012-4-9 174031 CST”解析为“2006”

从报错信息来看,我传入的dateTime值是正确的。我还尝试执行以下操作,效果很好:

dateTime := "2012-4-9 174031 CST"
date, err := time.Parse("2006-1-2 150405 MST", dateTime)

这困扰了我几天。谁能帮忙指出错误在哪里?谢谢!

最佳答案

您的值(value)观与您期望的不一样。我怀疑您在一个或多个值中有空格。这是一个产生相同错误的示例(注意 dateValue 上的前导空格):

https://play.golang.org/p/UwKhjQs6Nig

dateValue := " 2012-4-9"
timeValue := "174031"
dateTime := fmt.Sprintf("%s %s CST", dateValue, timeValue)
date, err := time.Parse("2006-1-2 150405 MST", dateTime)

如果您遇到这样的问题,第一步是打印您的值,然后使用它们来验证它们是否完全符合您的预期。如果发帖寻求帮助,也请尝试在 play.golang.org 上重现它——这样做的过程通常会帮助您自己找到问题。

错误信息可能会更好,但我怀疑它正在做的是采用格式的第一部分(年份),试图在字符串值中找到它但失败了,因此报告找不到 2006。

关于go - 在 GO 中解析时间时出现奇怪的错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48041140/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com