# JsonMarshal **Repository Path**: barytes/json-marshal ## Basic Information - **Project Name**: JsonMarshal - **Description**: toy implementation of encoding/json - **Primary Language**: Go - **License**: MulanPSL-1.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-10-30 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JsonMarshal JsonMarshal 包提供了 Linux 平台下将基础数据类型和结构数据类型格式化为 json 数据流的功能。 ## 安装 通过 `go get` 命令安装: ``` $ go get gitee.com/barytes/JsonMarshal ``` 也可以直接将仓库克隆至 `GOPATH/src` 路径下安装: ``` $ git clone https://gitee.com/barytes/json-marshal.git $GOPATH/src/gitee.com/barytes/JsonMarshal ``` ## 开始使用 本包仅提供了一个 `JsonMarshal()`方法用于序列化结构数据。如下的示例程序可以展示 JsonMarshal 包的用法: ```go package main import ( "fmt" "os" m "gitee.com/barytes/JsonMarshal" ) func main() { type Embed struct { Name string AMap map[string]int } type ColorGroup struct { ID int Name string Colors []string Child Embed } em := Embed { Name: "RedChild", AMap: map[string]int{"Crimson": 1, "Red" : 2}, } group := ColorGroup{ ID: 1, Name: "Reds", Colors: []string{"Crimson", "Red", "Ruby", "Maroon"}, Child: em, } b, err := m.JsonMarshal(group) if err != nil { fmt.Println("error:", err) } os.Stdout.Write(b) } ``` 输出: ``` {""ID":"1,""Name":""Reds",""Colors":"["Crimson","Red","Ruby","Maroon"],""Child":"{""Name":""RedChild",""AMap":"{"Crimson":1,"Red":2}}} ``` ## API文档 查看 API.txt 或使用如下命令: ``` $ go doc JsonMarshal ```