package stario import "encoding/binary" // Uint32ToByte 4位uint32转byte。 func Uint32ToByte(src uint32) []byte { res := make([]byte, 4) binary.BigEndian.PutUint32(res, src) return res } // ByteToUint32 byte转4位uint32。 func ByteToUint32(src []byte) uint32 { return binary.BigEndian.Uint32(src) } // Uint16ToByte 2位uint16转byte。 func Uint16ToByte(src uint16) []byte { res := make([]byte, 2) binary.BigEndian.PutUint16(res, src) return res } // ByteToUint16 用于byte转uint16。 func ByteToUint16(src []byte) uint16 { return binary.BigEndian.Uint16(src) } func cloneBytes(src []byte) []byte { if len(src) == 0 { return nil } return append([]byte(nil), src...) }