假设我有一个值为4ADDF6C259EBAFF8
的字符串。
使用这个,我想使用公式(hex(val) >> 25) + 1008000400
来获得一个时间戳。
使用他的encoding/hex
软件包,我提出了以下建议:
srcBytes := []byte(src)
dst := make([]byte, hex.EncodedLen(len(srcBytes)))
hex.Encode(dst, srcBytes)
此后,我需要一种方法将dst
进行25次移位,然后向其添加一个常量。
但是dst
的类型为[]byte
。
我需要它的类型为hex
,以便以后可以移位。如何转换[]byte
,以便可以转换它?
答案 0 :(得分:0)
假设您输入的字符串有所不同,但最多为16个十六进制数字,则只需将其转换为64位(无符号)整数并进行数学运算即可。我还假设您的常量以 0x 为前缀(假设它是十六进制的(通过数字判断)。
desired_df
BTW hex 不是一种类型,而是一种显示整数的方式。