用golang开发时,想用time.Parse或time.ParseInLocation将字符串转换成时间格式,第一个时间格式参数应该填:2006-01-02T15:04:05Z07:00 这个时间点,换成别的时间点不行!更不能填ymd这样的字母(毕竟不是java)。
看了些文章没搞懂为什么必须是这个时间点,但人家设定就是如此,也只能这么做了。
其实这个时间点可以这么记:
2006-01-02T15:04:05Z07:00
按照美式时间格式( 月,日,时,分,秒 ,年) 排列起来,每个数字的意义:
1 2 3 4 5 6 7
月 日 时 分 秒 年 时区
也许他们是为了方便记忆才这么设置/(ㄒoㄒ)/~~
一般时间里 "T" 相当于一个分隔符,不用太在意,包含单独的 "Z" 或者是包含正负号的时区偏移都是有效格式,例如:
- 2006-01-02T15:04:05Z
- 2006-01-02T15:04:05+07:00
另外time标准库内的时间格式常量如下:
const (
ANSIC = "Mon Jan _2 15:04:05 2006"
UnixDate = "Mon Jan _2 15:04:05 MST 2006"
RubyDate = "Mon Jan 02 15:04:05 -0700 2006"
RFC822 = "02 Jan 06 15:04 MST"
RFC822Z = "02 Jan 06 15:04 -0700" // RFC822 with numeric zone
RFC850 = "Monday, 02-Jan-06 15:04:05 MST"
RFC1123 = "Mon, 02 Jan 2006 15:04:05 MST"
RFC1123Z = "Mon, 02 Jan 2006 15:04:05 -0700" // RFC1123 with numeric zone
RFC3339 = "2006-01-02T15:04:05Z07:00"
RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00"
Kitchen = "3:04PM"
// Handy time stamps.
Stamp = "Jan _2 15:04:05"
StampMilli = "Jan _2 15:04:05.000"
StampMicro = "Jan _2 15:04:05.000000"
StampNano = "Jan _2 15:04:05.000000000"
)
后来:
后来又看了一篇关于说这个go时间格式的文章,在这里给大家分享出来
Go 的时间格式化为什么是 2006-01-02 15:04:05?
不过我觉得这个知识点记住就行了,别硬纠结
版权归原作者 动力无限good 所有, 如有侵权,请联系我们删除。