我有一个客户端服务器应用程序,使用 TCP 连接
客户:
type Q struct {
sum int64
}
type P struct {
M, N int64
}
func main() {
...
//read M and N
...
tcpAddr, err := net.ResolveTCPAddr("tcp4", service)
...
var p P
p.M = M
p.N = N
err = enc.Encode(p)
}
服务器:
type Q struct {
sum int64
}
type P struct {
M, N int64
}
func main() {
...
tcpAddr, err := net.ResolveTCPAddr("ip4", service)
listener, err := net.ListenTCP("tcp", tcpAddr)
...
var connB bytes.Buffer
dec := gob.NewDecoder(&connB)
var p P
err = dec.Decode(p)
fmt.Printf("{%d, %d}\n", p.M, p.N)
}
serve 上的结果是 {0, 0} 因为我不知道如何bytes.Buffer
从net.Conn
.
有没有办法通过 TCP 发送 gob 变量?
如果属实,怎么办?还是有其他方法可以通过 TCP 发送号码?
任何帮助或示例代码将不胜感激。