首页  >  文章  >  后端开发  >  如何在 Go 中将十六进制字符串转换为字节数组?

如何在 Go 中将十六进制字符串转换为字节数组?

Barbara Streisand
Barbara Streisand原创
2024-11-15 13:26:02353浏览

How to Convert Hex Strings to Byte Arrays in Go?

在 Go 中高效地将十六进制字符串转换为字节数组

在 Go 中,将十六进制字符串直接转换为字节数组提供了一个简单的解决方案。假设您有一个像“46447381”这样的十六进制字符串,并且旨在将其转换为由 [0x46, 0x44, 0x73, 0x81] 组成的字节数组。解决方案在于 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) 的字节切片,输出将以十进制格式显示:

[70 68 115 129]

但是,这些十进制值表示与十六进制表示形式相同的数字。

记住, hex.DecodeString() 提供了一种将十六进制字符串转换为字节数组的有效方法,可以节省您的时间并确保数据转换任务的准确性。

以上是如何在 Go 中将十六进制字符串转换为字节数组?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn