我正在进行一些Android项目,并尝试通过数据报套接字将对象传递到另一个设备 对象包含类的“字符串”数据成员(用户名,服务).. 我该怎么做呢?
我正在进行一些Android项目,并尝试通过数据报套接字将对象传递到另一个设备 对象包含类的“字符串”数据成员(用户名,服务).. 我该怎么做呢?
在发送方将一个ObjectOutputStream覆盖在ByteArrayOutputStream上。在写入后从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
然后通过DatagramPacket类发送它,但是您自己的类应该通过添加实现可序列化接口来进行序列化。如果您查看上面的链接,您将逐步了解更多详细信息和更多有用的信息。