从Golang地图读取字符串

时间:2017-10-20 23:00:45

标签: go

我在Golang开始。目前,我想从此地图中获取存储到密钥key_field的字符串:

map[key_field:[76 95 76 105 115 116 105 110 103 73 68]]

此地图声明为:

map:= make([]map[string]interface{}, 0)

我想要的是在字符串中存储该字节数组中包含的值,我使用fmt.Println打印它们的值 非常感谢你

2 个答案:

答案 0 :(得分:2)

如果要在地图中存储字符串,请将地图声明为

  let filename = path.join(process.env.UPLOADPATH, req.params.id);
  res.sendFile(filename);
  res.on('finish', function() {
      try {
        fs.unlink(filename); 
      } catch(e) {
        console.log("error removing ", filename); 
      }
  });

所以阅读它会更容易,但由于某些原因,你需要一个接口地图,然后

values:= []map[string]string{}

现在从此地图中读取值

values := []map[string]interface{}{}

示例:

fmt.Println(values[index]["key"])

游乐场链接:

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

答案 1 :(得分:0)

map[key_field]是接口{},因此必须使用类型断言才能获得正确的类型([] byte)。

你在这里:

    if needString,ok := map[key_field].([]byte); ok {
      fmt.Println(string(needString))
    }