作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我遇到了关于使用时间包在 golang 中解析日期字符串的最奇怪的问题。
错误:
parsing time "07-20-2018" as "2006-01-02": cannot parse "0-2018" as "2006"
代码块:
log.Println(datestring) //07-20-2018
date, err := time.Parse("2006-01-02", datestring)
log.Println(err) //parsing time "07-20-2018" as "2006-01-02": cannot parse "0-2018" as "2006"
log.Println(date) //parsing time "07-20-2018" as "2006-01-02": cannot parse "0-2018" as "2006"
我完全不知道这个问题指的是什么,字符串是使用 gorilla mux 从 golang 中的 URI 解析的。
datestring, _ := vars["date"] //some/path/{date}, date is 07-20-2018
有什么想法吗?
最佳答案
这是显而易见的。您正在尝试将 mm-dd-yyyy 解析为 yyyy-mm-dd。
一个简单的修复:
package main
import (
"fmt"
"time"
)
func main() {
datestring := "07-20-2018"
fmt.Println(datestring)
date, err := time.Parse("01-02-2006", datestring)
fmt.Println(date, err)
}
Playground :https://play.golang.org/p/gK7cMAkrP7l
输出:
07-20-2018
2018-07-20 00:00:00 +0000 UTC <nil>
去看看 Package time .
关于datetime - 一次 time.Parse 错误,我做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53530748/
我是一名优秀的程序员,十分优秀!