写完了, 感谢指路
部分关键代码
import (
"encoding/binary"
)
buff := bytes.NewBuffer([]byte{})
var abc int32
abc = 7777
err = binary.Write(buff, binary.BigEndian, &abc)
if err != nil {
log.Panic(err)
}
content := "abcdefg"
err = binary.Write(buff, binary.BigEndian, []byte(content))
if err != nil {
log.Panic(err)
}
var zeroByte uint8
/* fixed length 27 bytes */
end := 27 - len(content)
for i := 1; i <= end; i++ {
err = binary.Write(buff, binary.BigEndian, &zeroByte)
if err != nil {
log.Panic(err)
}
}
sendBuff := buff.Bytes()
_, err = socket.Write(sendBuff) // 发送数据
if err != nil {
fmt.Println("发送数据失败,err: ", err)
return
}
【 在 flw 的大作中提到: 】
: 你这里的 test.abc = 5 最好改成 test.abc = htons(5),
: 然后 Go 这边你用 encoding/binary 就可以读了,参见:
: $ go doc encoding/binary.Read
: ...................
--
修改:lioncat7 FROM 106.120.101.*
FROM 106.120.101.*