JSON

golang的json操作

字号+ 作者:H5之家 来源:H5之家 2015-11-22 10:36 我要评论( )

package main import ( encoding/json fmt os) type ConfigStruct struct { Host string `json:host` Port int `json:port` AnalyticsFil

package main import ( ) type ConfigStruct struct { Host ` Port ` AnalyticsFile ` StaticFileVersion ` StaticDir ` TemplatesDir ` SerTcpSocketHost ` SerTcpSocketPort ` Fruits []` } type Other struct { SerTcpSocketHost ` SerTcpSocketPort ` Fruits []` } func main() { jsonStr := `{: ,: : : : ,: ,: ,: : [, ]}` //json str 转map var dat map[string]interface{} if err := json.Unmarshal([]byte(jsonStr), &dat); err == nil { fmt.Println() fmt.Println(dat) fmt.Println(dat[]) } //json str 转struct var config ConfigStruct if err := json.Unmarshal([]byte(jsonStr), &config); err == nil { fmt.Println() fmt.Println(config) fmt.Println(config.Host) } //json str 转struct(部份字段) var part Other if err := json.Unmarshal([]byte(jsonStr), &part); err == nil { fmt.Println() fmt.Println(part) fmt.Println(part.SerTcpSocketPort) } b, err := json.Marshal(config); err == nil { fmt.Println() fmt.Println(string(b)) } //map 到json str fmt.Println() enc := json.NewEncoder(os.Stdout) enc.Encode(dat) //array 到 json str arr := [], , , , , , } lang, err := json.Marshal(arr) if err == nil { fmt.Println() fmt.Println(string(lang)) } //json 到 []string var wo []string if err := json.Unmarshal(lang, &wo); err == nil { fmt.Println() fmt.Println(wo) } }

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • golang json 格式文件解析

    golang json 格式文件解析

    2015-11-03 11:11

  • golang json解析之大小写

    golang json解析之大小写

    2015-10-15 17:30

  • json _ golang

    json _ golang

    2015-10-04 16:04

网友点评