我正在嘗試讀取一個(gè)巨大的 csv 文件,其中的日期列具有 2 種可能的非標(biāo)準(zhǔn)格式的值...2015 年 12 月 28 日 -- 月/日/年2013 年 11 月 2 日 -- 月/日/年...意味著中間的一天部分可以是一位數(shù)或兩位數(shù)。我從這個(gè)很好的老問題中學(xué)會(huì)了如何使用格式:解析不是“標(biāo)準(zhǔn)”格式的日期/時(shí)間字符串。但是由于我要循環(huán)嘗試解析每一行,所以我一次只能指定一種格式?,F(xiàn)在它在查找不同格式的日期值時(shí)出錯(cuò)。也許我可以在 parse-using-format#1 失敗時(shí)編寫代碼來捕獲錯(cuò)誤,然后應(yīng)用 format#2,而不是出錯(cuò)。但是有人可以指出我更好/正確的方法嗎?帶有日期字符串?dāng)?shù)組的示例代碼:https: //play.golang.org/p/aloIQnrkOjKpackage mainimport ( "fmt" "time")func main() { const format = "01/02/2006" //mm/dd/yyyy var list [2]string = [2]string{"12/28/2015", "11/2/2013"} for _, data := range list { t, err := time.Parse(format, data) if err != nil { fmt.Println("Error is: ", err) } else { fmt.Println("Value is: ", t) } }}//輸出:值為:2015-12-28 00:00:00 +0000 UTC錯(cuò)誤是:將“11/2/2013”解析為“01/02/2006”:無法將“2/2013”解析為“02”
如何使用多種格式循環(huán)解析日期?
慕無忌1623718
2022-06-13 16:09:19