我有一台服务器和一台客户端。服务器接收两个命令字符串:add
或remove
。如果服务器收到add
,它会将从套接字接收的对象添加到本地列表。是否可以连续打开两个不同的流来接收两个不同的对象?
示例:
/* To read the command */
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
/* To read the object */
ObjectInputStream ois = new ObjectInputStream(socket.getInputStream());
答案 0 :(得分:3)
不,这不是必要的。 String
是Serializable
。你可以这样做:
String s = (String) ois.readObject();
Object o = ois.readObject();
if("add".equals(s)){
list.add(o);
} else if ("remove".equals(s)){
list.remove(o);
}
请确保使用ObjectOutputStream.writeObject
发送命令和对象。