将对象写入套接字

Jay*_*epW 0 java sockets


我在这里遇到了问题......!

我想写一个程序,我必须传递一些数据和该数据的packet_no ...

所以,我正在创建一个班级Packet.我想Packet通过OutputStreamSocket 发送一个对象.

我该如何实现这一目标?
谢谢

Ale*_*rov 6

你需要的东西叫做ObjectOutputStream.它是从常规OutputStream创建的.在接收方,您将需要适当的ObjectInputStream.您的对象及其所有字段必须实现Serializable接口.

示例代码:

OutputStream os = socket.getOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(os);
oos.writeObject(p);
Run Code Online (Sandbox Code Playgroud)

  • @Adrian Pronk不太同意.您通常会分配生成的值,否则无需您看到它就会生成.但是当结构变化甚至一点时,你就会遇到问题.eclipse警告不要定义uid就不足为奇了. (2认同)