任意类型转换字节切片 (任意类型需是指明的占位大小 例如:int8 int16 float32……例如int不可以)
func AnyToHex(any interface{}) []byte {
buff := new(bytes.Buffer)
//数据写入buff
err := binary.Write(buff, binary.BigEndian, any)
if err != nil {
log.Panic(err)
}
return buff.Bytes()
}
例如:
整数转换为字节切片
思路:
1.开辟一个字节集缓存区
2.把整数写入到缓存区中
3.将缓存区转换为字节切片
注意:
1.方法binary.Write(io.Writer, ByteOrder, interface{})
2.bytes.Buffer实现了io.Writer接口(接收器)。写意味着别的数据写入自身(读则意味着自身数据放入其他地方)