首页 > 后端开发 > Golang > 如何在 Go 中将十六进制字符串解码为 []byte 切片?

如何在 Go 中将十六进制字符串解码为 []byte 切片?

DDD
发布: 2024-11-13 04:16:02
原创
997 人浏览过

How Can I Decode Hex Strings into []byte Slices in Go?

Go 中将十六进制字符串解码为 []byte 切片

Go 中,有一种便捷的方法可以将十六进制字符串转换为字节切片。当处理以十六进制字符串表示的二进制数据或需要解析以此格式编码的数据时,这非常有用。

encoding/hex 包中的 hex.DecodeString() 函数就是解决方案。它接受十六进制字符串作为输入并返回包含解码数据的字节片。以下示例演示了其用法:

s := "46447381"

data, err := hex.DecodeString(s)
if err != nil {
    panic(err)
}
fmt.Printf("% x", data)
登录后复制

输出:

46 44 73 81
登录后复制

但是,需要注意的是,如果直接使用 fmt 打印字节切片。 Println(data),值将采用十进制格式,而不是十六进制。

fmt.Println(data)
登录后复制

输出:

[70 68 115 129]
登录后复制

这些值代表相同的数字,只是采用十进制。

以上是如何在 Go 中将十六进制字符串解码为 []byte 切片?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板