<17> go json
2015-11-28 11:31
633 查看
go里的encoding/json 包专门处理json
[code] import ( "encoding/json" "fmt" "os" ) type Response1 struct { Page int Fruits []string } type Response2 struct { Page int `json:"page"` Fruits []string `json:"fruits"` } func main() { fmt.Println("Start Main func()") // 单个常见类型的处理 bolB, _ := json.Marshal(true) fmt.Println(string(bolB)) intB, _ := json.Marshal(1) fmt.Println(string(intB)) fltB, _ := json.Marshal(2.34) fmt.Println(string(fltB)) strB, _ := json.Marshal("gopher") fmt.Println(string(strB)) slcD := []string{"apple", "peach", "pear"} slcB, _ := json.Marshal(slcD) fmt.Println(string(slcB)) mapD := map[string]int{"apple": 5, "lettuce": 7} mapB, _ := json.Marshal(mapD) fmt.Println(string(mapB)) // struct的处理 res1D := &Response1{ Page: 1, Fruits: []string{"apple", "peach", "pear"}} res1B, _ := json.Marshal(res1D) fmt.Println(string(res1B)) res2D := &Response2{ Page: 1, Fruits: []string{"apple", "peach", "pear"}} res2B, _ := json.Marshal(res2D) fmt.Println(string(res2B)) byt := []byte(`{"num":6.13,"strs":["a","b"]}`) var dat map[string]interface{} if err := json.Unmarshal(byt, &dat); err != nil { panic(err) } fmt.Println(dat) fmt.Println(dat["num"]) num := dat["num"].(float64) fmt.Println(num) strs := dat["strs"].([]interface{}) str1 := strs[0].(string) fmt.Println(str1) // json => struct str := `{"page": 1, "fruits": ["apple", "peach"]}` res := Response2{} json.Unmarshal([]byte(str), &res) fmt.Println(res) fmt.Println(res.Fruits[0]) enc := json.NewEncoder(os.Stdout) d := map[string]int{"apple": 5, "lettuce": 7} enc.Encode(d) ares2D := &Response2{ Page: 1, Fruits: []string{"apple", "peach", "pear"}} ares2B, _ := json.MarshalIndent(ares2D, "a", "b") fmt.Println(string(ares2B)) }
相关文章推荐
- JS基础—选项卡套选项卡(函数传参)
- jsp和js的区别
- Javascript编程之继承实例汇总
- 使用JavaScript实现一个“字节码解释器”,并用它重新实现JS科学计算器的后端(待续)
- Javascript编程中几种继承方式比较分析
- JSP详细解析
- JavaScript 对象 实例
- 从后台返回json格式转换
- 课件_49.第九章:Ajax技术[4]-JSONP跨源请求
- javascript Date format(js日期格式化)
- structs2-json应用
- 理解js的对象,对象创建,继承
- kettle中使用JavaScript的一个例子
- 《JavaScript权威指南》学习笔记 第四天 数组
- jsp内置对象有哪些?作用是什么
- jsp有哪些内置对象?作用分别是什么?
- Javascript编程中几种继承方式比较分析
- Javascript编程之继承实例汇总
- Javascript页面跳转常见实现方式汇总
- JavaScript实现页面跳转的几种常用方式