時間解析
如果你將日期儲存為字串,則需要對其進行解析。使用 time.Parse
。
// time.Parse( format , date to parse)
date, err := time.Parse("01/02/2006", "04/08/2017")
if err != nil {
panic(err)
}
fmt.Println(date)
// Prints 2017-04-08 00:00:00 +0000 UTC
第一個引數是字串儲存日期的佈局,第二個引數是包含日期的字串。01/02/2006
與格式是 MM/DD/YYYY
相同。
佈局通過顯示如果是值,將如何解釋定義為 Mon Jan 2 15:04:05 -0700 MST 2006
的參考時間來定義格式; 它作為輸入格式的一個例子。然後將對輸入字串進行相同的解釋。
你可以看到時間包中定義的常量以瞭解如何編寫佈局字串,但請注意,常量不會匯出,也不能在時間包之外使用。
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
stdISO8601SecondsTZ // "Z070000"
stdISO8601ShortTZ // "Z07"
stdISO8601ColonTZ // "Z07:00" // prints Z for UTC
stdISO8601ColonSecondsTZ // "Z07:00:00"
stdNumTZ // "-0700" // always numeric
stdNumSecondsTz // "-070000"
stdNumShortTZ // "-07" // always numeric
stdNumColonTZ // "-07:00" // always numeric
stdNumColonSecondsTZ // "-07:00:00"
)