在Go中转换一片切片?

时间:2015-01-20 18:57:39

标签: go

如何转换此切片的字节切片

[[105 100] [49]]

切片?

我试过

sliceOfStrings := []string(sliceOfByteSlices.([][]byte))

得到了一个

invalid type assertion: values.([][]byte) (non-interface type []interface {} on left)

2 个答案:

答案 0 :(得分:2)

你应该做循环,但你可以使用std lib

作弊
byt := bytes.Join(a, []byte(sep))
str := strings.Split(string(byt), sep)

这是工作示例https://play.golang.org/p/QzySUsRMg6

答案 1 :(得分:2)

您可以使用for循环执行此操作:

package main

import "fmt"

func main() {
    var res []string
    arr := [][]byte{{105, 100}, {49}}

    for _, b := range arr {
        res = append(res, string(b))
    }
    fmt.Println(res)
}

在此测试:http://play.golang.org/p/el4YXfFZpM