Golang将字符串打印为字节数组

时间:2019-05-02 20:44:31

标签: arrays json go

将字符串打印为字节数组的fmt代码是什么?

如果我有一个编组的json对象,我可以这样打印字节:

type Fakejs struct {
    Fake string `json:"fake"`
}

fjs := Fakejs {Fake:"abc"}
mjs, err := json.Marshal(fjs)
fmt.Println(mjs)

生产

[123 34 102 97 107 101 34 58 34 97 98 99 34 125]

我想要的是什么。但是,使用常规字符串,我可以尝试以下方法:

mystr := "{\"fake\":\"abc\"}"
fmt.Printf("mystr:\t %x \n", []byte(mystr))

这会产生:

7b2266616b65223a22616263227d

这不是我想要的。类似于“%x”的格式代码将把字符串打印为字节数组。

1 个答案:

答案 0 :(得分:2)

https://play.golang.org/p/eQcZm57k1C1

package main

import (
    "fmt"
)

func main() {
    mystr := "{\"fake\":\"abc\"}"
    fmt.Printf("mystr:\t %v \n", []byte(mystr))
}

打印

mystr:   [123 34 102 97 107 101 34 58 34 97 98 99 34 125]