整型和字节数组之间的转换:(以int64到[]byte之间的转换为例,其他类似)
package main
import (
"fmt"
"encoding/binary"
)
func main() {
var i int64 = 2323
buf := Int64ToBytes(i)
fmt.Println(buf)
fmt.Println(BytesToInt64(buf))
}
func Int64ToBytes(i int64) []byte {
var buf = make([]byte, 8)
binary.BigEndian.PutUint64(buf, uint64(i))
return buf
}
func BytesToInt64(buf []byte) int64 {
return int64(binary.BigEndian.Uint64(buf))
}
**注意**,这里涉及到大小端问题。例子中用的是大端序。
注:自己通过位操作可以实现,不过有现成的包可以用,当然使用之。
更多评论