相关疑难解决方法(0)

Go:marshal [] byte到JSON,给出一个奇怪的字符串

当我尝试将[]字节编组为JSON格式时,我只得到一个奇怪的字符串.

请查看以下代码.

我有两个疑问:

如何将[]字节编组为JSON?

为什么[]字节成为这个字符串?

package main

import (
    "encoding/json"
    "fmt"
    "os"
)

func main() {
    type ColorGroup struct {
        ByteSlice    []byte
        SingleByte   byte
        IntSlice     []int
    }
    group := ColorGroup{
        ByteSlice:  []byte{0,0,0,1,2,3},
        SingleByte: 10,
        IntSlice:   []int{0,0,0,1,2,3},
    }
    b, err := json.Marshal(group)
    if err != nil {
        fmt.Println("error:", err)
    }
    os.Stdout.Write(b)
}
Run Code Online (Sandbox Code Playgroud)

输出是:

{"ByteSlice":"AAAAAQID","SingleByte":10,"IntSlice":[0,0,0,1,2,3]}
Run Code Online (Sandbox Code Playgroud)

golang playground:https://play.golang.org/p/wanppBGzNR

json go

12
推荐指数
1
解决办法
2万
查看次数

标签 统计

go ×1

json ×1