java - 如何通过数据报套接字发送对象

标签 java android sockets datagram

我正在开发一些 Android 项目并尝试通过数据报套接字将对象传递给其他设备 对象包含类的“字符串”数据成员(用户名、服务).. 我该怎么做??

最佳答案

在发送方的 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

关于java - 如何通过数据报套接字发送对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10358981/

相关文章:

Java内置数据结构用于绘制相邻房间的 map

java - 如何获取不同长度的二维数组最大大小

android - 如何在 Android 中创建带边框的表格?

sockets - 由于证书 : SSL protocol error when attempting to connect with host 导致 Vugen 重播错误

java - 为什么在向正在运行的进程发送输入时需要添加\n 和\r?

java - 如何通过坐标查看路线

java - 仅从 XML 元素内的实体编码 HTML 中提取文本

java - 为什么当我在 SQLite 中登录页面时我的页面自动关闭?

silverlight - Silverlight和clientaccesspolicy.xml

python - 如何在 Python 中创建 ICMP 跟踪路由