Go使用RFC3339进行编码,如果控制生成的json,只需将2022-04-03T00:00:00.000
更改为2022-04-03T00:00:00.000Z
。
例如,这是有效的。
type Contract struct {
ContractId *int `json:"contract_id"`
CompanyId *int `json:"company_id"`
DateEstablished *time.Time `json:"date_established"`
ExpiryDate *time.Time `json:"expiry_date"`
ExtensionExpiryDate *time.Time `json:"extension_expiry_date"`
Description *string `json:"description"`
}
func main() {
body := `{"contract_id":0,"date_established":"2022-04-03T00:00:00.000Z","expiry_date":null,"extension_expiry_date":null,"description":"fffff"}`
var contract Contract
reader := strings.NewReader(body)
decoder := json.NewDecoder(reader)
err := decoder.Decode(&contract)
if err != nil {
fmt.Println("Error: ", err)
} else {
fmt.Printf("Contract: %+v\n", contract)
}
}
如果不控制json,则需要编写一个自定义解组方法。
标签:NewDecode,err,00.000,contract,expiry,json,date,用法 From: https://www.cnblogs.com/cheyunhua/p/17918732.html