>我已经检查了解决此问题的其他建议,但它们不起作用。
当前代码似乎有效,直到您输入不同的日期,然后我得到如下所示的随机失败。
代码如下:
yy, mm, dd = 11, 27, 2019
s_yy, s_mm, s_dd = 11, 1, 2019
e_yy, e_mm, e_dd = 1, 1, 2020
input := fmt.Sprintf("%d-%d-%d", yy, mm, dd)
input += "T15:04:05.000-07:00"
t, _ := time.Parse("2006-01-02T15:04:05.000-07:00", input)
input_s := fmt.Sprintf("%d-%d-%d", s_yy, s_mm, s_dd)
input_s += "T15:04:05.000-07:00"
t_s, _ := time.Parse("2006-01-02T15:04:05.000-07:00", input_s)
input_e := fmt.Sprintf("%d-%d-%d", e_yy, e_mm, e_dd)
input_e += "T15:04:05.000-07:00"
t_e, _ := time.Parse("2006-01-02T15:04:05.000-07:00", input_e)
fmt.Println("t = ", t, " t_s = ", t_s, " t_e", t_e)
结果如下:
t = 2019-12-27 15:04:05
-0700 -0700 t_s = 0001-01-01 00:00:00 +0000 UTC t_e 0001-01-01 00:00:00 +0000 UTC任何帮助都会有所帮助 提前谢谢。
你的代码有问题。
- 变量的顺序是错误的。
yy, mm, dd = 11, 27, 2019
应该是yy, mm, dd = 2019, 11, 27
. - 不要忽略错误。如果你有问题,只需打印它会有很多帮助(或者更好的是写一个测试(
- 您的格式错误。它的形式应该像
fmt.Sprintf("%d-%02d-%02d", yy, mm, dd)
您可以在此处查看结果