golang的json的时间格式化解决方案
2016-11-04 13:46
351 查看
golang的json的时间格式化解决方案
1.通过数据查询的时候指定号格式,这样就不要再转格式了2.通过time.Time类型穿件别名,然后为这个别名类实现MarshalJSON方法。
以下来自golang的原来注释
If an encountered value implements the Marshaler interface// and is not a nil pointer, Marshal calls its MarshalJSON method
// to produce JSON. If no MarshalJSON method is present but the
// value implements encoding.TextMarshaler instead, Marshal calls
// its MarshalText method.
// jsontest project main.go package main import ( "encoding/json" "fmt" "time" ) type jsonTime time.Time //实现它的json序列化方法 func (this jsonTime) MarshalJSON() ([]byte, error) { var stamp = fmt.Sprintf("\"%s\"", time.Time(this).Format("2006-01-02 15:04:05")) return []byte(stamp), nil } type Test struct { Date jsonTime `json:"date"` Name string `json:"name"` State bool `json:"state"` } func main() { var t = Test{} t.Date = jsonTime(time.Now()) t.Name = "Hello World" t.State = true body, _ := json.Marshal(t) fmt.Println(string(body)) }
输出结果:
{ "date":"2016-11-04 13:42:24", "name":"Hello World", "state":true }
相关文章推荐
- golang结构体json的时间格式化解决方案
- golang结构体json的时间格式化解决方案
- 关于json返回日期格式化的解决方案
- Newtonsoft.Json序列化 对时间格式化处理
- Newtonsoft.Json 时间格式化问题
- 时间类型转json后格式化显示方法
- JSON通过配置文件格式化时间属性(解决[object Object]问题)
- net.sf.json 日期 时间 格式化 方法
- 关于json返回日期格式化的解决方案
- json时间格式化问题
- golang时间格式化
- 关于JSON数据格式返回时间数据格式化问题
- Json返回时间的格式中出现乱码问题的两种解决方案
- Golang时间格式化
- LINQ关联表查询语法和.NET扩展方法和JSON.NET时间格式化代码段
- Json 返回时间格式为 /Date(1416882720000)/ 格式化方法
- 格式化json返回的时间
- js格式化json传来的UTC格式的时间
- json时间数据,使用javascript格式化字符串
- Struts2的JSON插件--格式化时间/控制属性返回