go - 在 Go 中按 time.Parse(layout, value) 获取“小时超出范围”
问题描述
hour out of range
尝试使用以下代码解析时间戳字符串时出现错误:
package main
import (
"log"
"time"
)
func main() {
layout := "2006-01-02 15:04:05 +0530"
timeStr := "2020-05-23 22:55:51 +0530"
t, tErr := time.Parse(layout, timeStr)
log.Printf("Layout: %s", layout)
log.Printf("Time (string): %s", timeStr)
log.Printf("Time (time.Time): %s", t.String())
if tErr != nil {
log.Printf("Error: %s", tErr.Error())
}
}
游乐场:https ://goplay.space/#SIWJWKduPQg
重复/类似于:时间超出范围的时间。在 golang 中解析
解决方案
您应该使用正确的格式常量进行解析。
对于https://golang.org/src/time/format.go中的数字时区偏移
Numeric time zone offsets format as follows:
-0700 ±hhmm
-07:00 ±hh:m
-07 ±hh
在这里解析±hhmm
你应该使用确切的格式-0700
。所以使用-0700
而不是+0530
解析格式
layout := "2006-01-02 15:04:05 -0700"
推荐阅读
- python - ValueError:层顺序的输入 0 与层不兼容:输入形状的预期轴 -1 具有值 1
- vba - 将波斯文文本从文件插入 PowerPoint
- python - pyspark 填充 spark 数据框中每个 id 的缺失数据
- svg - 在 Seed Rust 应用程序中为 SVG 文本元素调用 getBBox
- python - 在 python 中提取项目进行演示 - 我有一个从 Outlook 中获取的列表,但需要将这些项目分解为单独的字符串
- qt - 无法让 Qt Creator 调试在 Windows 10 上运行
- python - 基本的While循环迭代顺序?
- javascript - 如何使用 setAttribute 方法和 Selenium 和 Python 更改 Datepicker 的隐藏元素的日期?
- google-apps-script - 简单的 Google 表格脚本现在速度慢且不可靠
- python - 直接打开二进制文件到 Tkinter GUI