2015-07-04 136 views
1

我是新來golang,嘗試做這樣的事情:字節轉換爲字符串golang

bytes := [4]byte{1,2,3,4} 
str := convert(bytes) 

//str == "1,2,3,4" 

搜索了很多,真不知道如何做到這一點。

我知道這是行不通的:

str = string(bytes[:]) 
+0

是你想有作爲的結果是什麼第一評論:

func convert(b []byte) string { s := make([]string,len(b)) for i := range b { s[i] = strconv.Itoa(int(b[i])) } return strings.Join(s,",") } 

被稱爲? – inf

+0

@inf是的,這就是我想要的 –

+3

http://golang.org/pkg/strconv/#Itoa – tomasz

回答

6

不是最有效的方式來實現它,但你可以簡單的寫:

bytes := [4]byte{1,2,3,4} 
str := convert(bytes[:]) 
5

如果沒有綁定到確切的表示,那麼你可以使用fmt.Sprint

fmt.Sprint(bytes) // [1 2 3 4] 

在另一邊,如果你想你的確切逗號風格,那麼你必須使用循環與strconv.Itoa一起自己構建它。