无法将地图对象转换为JSON对象

时间:2019-03-29 16:37:43

标签: dictionary go

我正在用Go lang编写一些代码。我是Go语言的新手,我被困在一个地方。我现在有一个看起来像这样的地图对象

count := map[string]int{}
count["Kitchen"] = 1
count["Electronics"] = 1

the output looks like this: map[Electronics:1 Kitchen:1]

现在我在做

answer, _ := json.Marshal(count)

预期的答案应如下所示:

{"Kitchen": 1, "Electronics": 1}

但是它是这样的:

[123 34 69 108 101 99 116 114 111 110 105 99 115 34 58 49 44 34 75 105 116 99 104 101 110 34 58 49 125]

1 个答案:

答案 0 :(得分:2)

json.Marshal的输出是一个字节数组。 如果您需要将它们用作字符串,则可以使用string(answer)

进行强制转换
package main

import (
    "fmt"
    "encoding/json"
)

func main() {
    count := map[string]int{}
    count["Kitchen"] = 1
    count["Electronics"] = 1
    answer, _ := json.Marshal(count)
    fmt.Println(string(answer))
}

Playground!

中执行上面的代码
相关问题