如何实现python binascii.unhexlify方法?
在我的公司有一个用python编写的系统,我想用golang重新实现它 问题如何实现python binascii.unhexlify方法?,python,python-3.x,go,Python,Python 3.x,Go,在我的公司有一个用python编写的系统,我想用golang重新实现它 问题 Pythonbinascii.unhexlify看起来很复杂,我不知道在go中实现它有多热。binascii.unhexlify方法足够简单。 它只是从十六进制转换成二进制。每两个十六进制数字是一个8位字节(256个可能值)。 这是我的密码 func unhexlify(str string) []byte { res := make([]byte, 0) for i := 0; i < len(
Python
binascii.unhexlify
看起来很复杂,我不知道在go中实现它有多热。binascii.unhexlify
方法足够简单。
它只是从十六进制转换成二进制。每两个十六进制数字是一个8位字节(256个可能值)。 这是我的密码
func unhexlify(str string) []byte {
res := make([]byte, 0)
for i := 0; i < len(str); i+=2 {
x, _ := strconv.ParseInt(str[i:i+2], 16, 32)
res = append(res, byte(x))
}
return res
}
它只是从十六进制转换成二进制。每两个十六进制数字是一个8位字节(256个可能的值)。@TigerhawkT3抱歉,
binascii.unexlify
很简单。如果这不是练习,生产代码当然应该使用标准库:。@Peter tks,这是我想要的
func ExampleDecodeString() {
const s = "48656c6c6f20476f7068657221"
decoded, err := hex.DecodeString(s)
if err != nil {
log.Fatal(err)
}
fmt.Printf("%s\n", decoded)
// Output:
// Hello Gopher!
}