将十六进制字符串转换为整数

艾略特·拉森(Elliot Larson)

我有一个要处理的十六进制值数据包。它们以字符串形式进入。例如,一小包C0192但是,我不太确定如何将字符串值转换为整数值。

如果我使用这个:

Base.decode16!("C0")
# <<192>>

...我得到一个二进制文件。

我认为提取此整数值的唯一方法如下:

<<x>> = Base.decode16!("C0")
x
# 192

这行得通,而且似乎有些习惯,但是我对Elixir还是陌生的,不确定这是否是最佳解决方案。您将如何在Elixir中将字符串十六进制值转换为整数?

德米特里·比列茨基(Dmitry Biletskyy)

您可以使用整数

Integer.parse("C0", 16) # returns {192, ""}

要将其转换回您可以使用

# to charlist
Integer.to_charlist(192, 16) # returns 'C0'

# to string
Integer.to_string(192, 16) # returns "C0"

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章