You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Golang解析无前导零的RFC822Z格式日期遇问题求助

解决Go中无前置零日期字符串的解析问题
  • 问题根源:你误用了time.Parse的布局字符串规则——布局必须使用Go的**参考时间Mon Jan 2 15:04:05 MST 2006**对应的字段格式,而非目标日期的实际数字。你的布局里把秒字段写成了21,但正确的秒格式应该是05(对应参考时间的秒值)。

  • 正确的布局字符串:"2 Jan 2006 15:04:05 -0700"

  • 修复后的代码示例:

package main

import (
	"fmt"
	"time"
)

func main() {
	stringDate := "5 Dec 2022 20:15:21 +0000"
	parseTime, timeParseError := time.Parse("2 Jan 2006 15:04:05 -0700", stringDate)
	if timeParseError != nil {
		fmt.Println("解析错误:", timeParseError)
		return
	}
	fmt.Println("解析结果:", parseTime)
}
  • 验证说明:这个布局完全匹配你的日期格式:
    • 2:匹配无前置零的日(如5)
    • Jan:匹配月份缩写(如Dec)
    • 2006:匹配四位年份(如2022)
    • 15:04:05:匹配24小时制的时分秒(如20:15:21)
    • -0700:匹配带正负号的四位时区偏移(如+0000)

之前的SA1002警告也是因为布局字符串不符合规范导致的静态检查提示,修复布局后警告会自动消失,解析也能成功。

内容的提问来源于stack exchange,提问作者vbp13

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 23:35:20