我正在开发一些Android项目&试图通过Datagram Socket将对象传递给另一个设备 对象包含类的'String'数据成员(UserName,Services).. 我怎么能这样做?
答案 0 :(得分:6)
在发送方的ByteArrayOutputStream之上层叠ObjectOutputStream。从ByteArrayOutputStream中收集字节(在写入之后),并将其发送到数据报包中。在接收端执行相反操作,将数据解压缩回对象。
您的发送方的伪代码:
final ByteArrayOutputStream baos = new ByteArrayOutputStream(6400);
final ObjectOutputStream oos = new ObjectOutputStream(baos);
oos.writeObject(o);
final byte[] data = baos.toByteArray();
final DatagramPacket packet = new DatagramPacket(data, data.length);
// Send the packet
答案 1 :(得分:0)
Object transport via datagram packets
然后通过DatagramPacket类发送它,但你自己的类应该可以通过添加实现可序列化的接口来序列化,如果你查看上面的链接,你将逐步获得更多的细节,更有帮助