卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章64334本站已运行4115

Golang解析RFC822Z格式的不带前导零的日期

golang解析rfc822z格式的不带前导零的日期

在Golang中解析RFC822Z格式的日期时,遇到不带前导零的日期格式可能会出现问题。RFC822Z格式是一种常用的日期格式,但是有时候日期中的月份和日期没有前导零。在解析这种格式的日期时,需要特别处理,否则可能会导致解析错误。本文将介绍如何使用Golang解析不带前导零的日期格式,并提供了相应的代码示例。通过阅读本文,你将了解如何正确解析RFC822Z格式的日期,以及如何处理不带前导零的日期格式。

问题内容

我有一个无法控制的日期字符串,我正在尝试将其解析为日期。

该格式与 rfc822z 最相似。

rfc822z =“06 年 1 月 2 日 15:04 -0700”

参考:https://yourbasic.org/golang/format-parse-string-time-date-example/

但是,它没有前导零。

示例:“2022 年 12 月 5 日 20:15:21 +0000”

我在其他帖子中看到的方法是编写手动格式。

parsetime, timeparseerror = time.parse("2 jan 2006 15:04:21 -0700", stringdate)

但是,当我尝试这样做时,我收到警告:

parsing time "2 Jan 2006 15:04:21 -0700" as "2 Jan 2006 15:04:21 -0700": cannot parse " -0700" as "1" (SA1002)

尽管有警告,但运行它失败了,这并不奇怪。

解决方法

您的时间格式不匹配 - 在您的示例中,您有“2022年12月5日”,但您使用的是“2 Jan 06”,并且在您的参考格式中您有“15:04:21”,但它应该是“15:04:05”。

您的参考格式应为 2 Jan 2006 15:04:05 -0700 而不是 2 Jan 06 15:04:21 -0700

https://www.php.cn/link/efb53b87d5f5286f29b7791ec36a34f8

卓越飞翔博客
上一篇: 在sync.WaitGroup goroutine中写入chan
下一篇: 使用cuelang,如何在从Golang模块生成的提示模式的结构字段上放置条件
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏