Android-Socket无法发送自定义对象
创始人
2024-08-19 21:30:11
0

在Android中,Socket通信只能传输字节流,无法直接发送自定义对象。但可以通过序列化和反序列化的方式将自定义对象转换成字节流进行传输。

以下是一个示例代码,展示了如何通过序列化和反序列化的方式使用Socket发送和接收自定义对象:

  1. 创建一个自定义对象类,实现Serializable接口,以支持对象的序列化和反序列化:
public class MyObject implements Serializable {
    private String name;
    private int age;

    // 构造函数和其他方法...

    // Getter和Setter方法...
}
  1. 在发送端,将自定义对象转换成字节流,并通过Socket发送字节流到接收端:
MyObject obj = new MyObject();
// 设置对象的属性...

// 将对象序列化为字节流
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(obj);
oos.flush();
byte[] data = bos.toByteArray();

// 发送字节流到接收端
Socket socket = new Socket("serverIP", 12345);
OutputStream outputStream = socket.getOutputStream();
outputStream.write(data);
outputStream.flush();
socket.close();
  1. 在接收端,接收字节流,并将字节流反序列化为自定义对象:
// 接收字节流
ServerSocket serverSocket = new ServerSocket(12345);
Socket socket = serverSocket.accept();
InputStream inputStream = socket.getInputStream();
byte[] data = new byte[1024];
int len = inputStream.read(data);

// 将字节流反序列化为对象
ByteArrayInputStream bis = new ByteArrayInputStream(data);
ObjectInputStream ois = new ObjectInputStream(bis);
MyObject receivedObj = (MyObject) ois.readObject();

// 处理收到的自定义对象
// ...

socket.close();
serverSocket.close();

通过以上的代码示例,可以在Android Socket通信中发送和接收自定义对象。需要注意的是,自定义对象类必须实现Serializable接口,以支持对象的序列化和反序列化操作。

相关内容

热门资讯

玩家必备教程!微扑克代打(we... 玩家必备教程!微扑克代打(wePoke)外挂透明挂辅助脚本(透视)wpk教程(有挂秘诀)-哔哩哔哩准...
推荐十款(拱趴大菠萝切牌规律)... 推荐十款(拱趴大菠萝切牌规律)外挂透明挂辅助app(透视)软件透明挂(有挂工具)-哔哩哔哩是一款可以...
透视安卓版(wepoke辅助透... 大家肯定在之前wepoke辅助透视或者wepoke辅助透视中玩过透视安卓版(wepoke辅助透视)外...
透视中牌率(线上德州)外挂透明... 透视中牌率(线上德州)外挂透明挂辅助APP(透视)软件透明挂(有挂分析)-哔哩哔哩;人气非常高,ai...
带你了解(德州微扑克)外挂透明... 带你了解(德州微扑克)外挂透明挂辅助工具(辅助挂)软件透明挂(2021已更新)(哔哩哔哩);德州微扑...
七分钟了解!德州wpk(Wep... 七分钟了解!德州wpk(WepoKe)外挂透明挂辅助机制(透视)必赢方法(有挂助手)-哔哩哔哩 科技...
教程攻略(WPK苹果)外挂透明... 教程攻略(WPK苹果)外挂透明挂辅助插件(辅助挂)软件透明挂(有挂细节)-哔哩哔哩科技教程也叫必备教...
1分钟了解(德扑输赢)外挂透明... 德扑输赢透视辅助版本稳定性对比与推荐‌:1分钟了解(德扑输赢)外挂透明挂辅助器(辅助挂)透视辅助(2...
透视辅助!aapoker能玩(... 透视辅助!aapoker能玩(Wepoke)外挂透明挂辅助器安装(辅助挂)新2024教程(有挂秘籍)...
总算了解(微扑克ai代打)外挂... 总算了解(微扑克ai代打)外挂透明挂辅助插件(辅助挂)发牌机制(确实有挂)-哔哩哔哩准备好在微扑克a...