-1
A
回答
0
只需使用hex.DecodeString()
功能:
s := "46447381"
data, err := hex.DecodeString(s)
if err != nil {
panic(err)
}
fmt.Printf("% x", data)
输出:
46 44 73 81
尝试它的Go Playground。
注:
如果你只是单纯的打印使用fmt.Println(data)
字节片,打印值将是十进制格式,这就是为什么(因为它是在十六进制格式指定),它不会匹配您的输入string
。的fmt.Println(data)
输出将是:
[70 68 115 129]
这些都是相同的数字只是十进制基数。
+0
你说得对,我很愚蠢,我认为这不应该转化为十二月,但的确应该是,谢谢。 http://play.golang.org/p/S_blDzfpN7 – cuuboy 2015-02-09 07:11:46
如果问题很简单,为什么问我们?只是开玩笑'。没有违法 – EdmDroid 2015-02-09 07:00:55
这会比我想象的更复杂,因为我只是使用hex.EncodeToString,我想知道为什么我不能使用这种函数来让它回来。 – cuuboy 2015-02-09 07:01:09
@EdmDroid是的问题很简单,但这意味着我想要一个简单的答案。 – cuuboy 2015-02-09 07:06:33