Networking 如何将通过网络接收的字节片转换为结构
是否有库函数将[]字节转换为结构?我正在一个客户端上工作,以捕获从用C编写的服务器发送的结构 我有这样的结构设置Networking 如何将通过网络接收的字节片转换为结构,networking,struct,go,Networking,Struct,Go,是否有库函数将[]字节转换为结构?我正在一个客户端上工作,以捕获从用C编写的服务器发送的结构 我有这样的结构设置 type mystruct struct { A uint32 B uint16 } type mystruct struct { A uint32 B uint16 } // ... networking code... var buff []byte = make([]byte, 6) sock.ReadFromUDP(buf
type mystruct struct {
A uint32
B uint16
}
type mystruct struct {
A uint32
B uint16
}
// ... networking code...
var buff []byte = make([]byte, 6)
sock.ReadFromUDP(buff)
var reader = bytes.NewReader(buff)
var str mystruct
binary.Read(reader, binary.LittleEndian, &str)
// now str has things
fmt.Println(str.A)
这是我通过线路读取字节的方式
var s []byte = make([]byte, 6)
sock.ReadFromUDP(s)
fmt.Println(s)
您可以使用编码/二进制。 根据文档的示例:
特别是对于structs,它应该是这样的
type mystruct struct {
A uint32
B uint16
}
type mystruct struct {
A uint32
B uint16
}
// ... networking code...
var buff []byte = make([]byte, 6)
sock.ReadFromUDP(buff)
var reader = bytes.NewReader(buff)
var str mystruct
binary.Read(reader, binary.LittleEndian, &str)
// now str has things
fmt.Println(str.A)