
time.Parse正在寻找一些关键值。
通过更改:
test, err := time.Parse("10/15/1983", "10/15/1983")至
test, err := time.Parse("01/02/2006", "10/15/1983")解析器将识别出它。
这是 *** 场上修改后的代码。
package mainimport "fmt"import "time"func main() { test, err := time.Parse("01/02/2006", "10/15/1983") if err != nil { panic(err) } fmt.Println(test)}您可以利用src / pkg / time /
format.go文件中的常量列表来创建自己的解析格式。
const ( stdLongMonth = "January" stdMonth = "Jan" stdNumMonth = "1" stdZeroMonth = "01" stdLongWeekDay = "Monday" stdWeekDay = "Mon" stdDay = "2" stdUnderDay = "_2" stdZeroDay = "02" stdHour= "15" stdHour12 = "3" stdZeroHour12 = "03" stdMinute = "4" stdZeroMinute = "04" stdSecond = "5" stdZeroSecond = "05" stdLongYear = "2006" stdYear= "06" stdPM = "PM" stdpm = "pm" stdTZ = "MST" stdISO8601TZ = "Z0700" // prints Z for UTC stdISO8601ColonTZ = "Z07:00" // prints Z for UTC stdNumTZ = "-0700" // always numeric stdNumShortTZ = "-07" // always numeric stdNumColonTZ = "-07:00" // always numeric)
因此,只要您的格式指定年份,就应使用“ 06”或“ 2006”完成,用“ 05”或“ 5”指定秒,并在“ MST”,“ Z0700”,“
Z07:00”中指定时区”,“-0700”,“-07”或“ -07:00”。如果您引用常量列表,则可以将需要解析的任何标准格式组合在一起。
例如,如果要以“
通用日志格式”(Apache的日志文件)格式解析日期/时间,可以通过将以下字符串
time.Parse()作为
布局 参数传递来实现。
"02/Jan/2006:15:04:05 -0700"
“ 02”表示月份的日期字段,“ Jan”表示月份的名称字段,“ 2006”表示年份的字段,“ 15”表示24小时格式的一天中的小时字段,“
04”表示分钟的字段, “ 05”表示秒字段,“-0700”表示时区字段。
该格式将解析当前的PST时间:
31/Dec/2012:15:32:25 -0800
因此,
time.Parse()调用将如下所示:
test, err := time.Parse("02/Jan/2006:15:04:05 -0700", "31/Dec/2012:15:32:25 -0800")欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)