2012-01-14 66 views
0

我有一個服務器和一個客戶端。服務器收到兩個命令字符串:addremove。如果服務器收到add,它將它從套接字接收到的對象添加到本地列表中。連續打開兩個不同的流來接收兩個不同的對象是否可以接受?打開兩個不同的套接字輸入流

實施例:

/* To read the command */ 
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream())); 
/* To read the object */ 
ObjectInputStream ois = new ObjectInputStream(socket.getInputStream()); 

回答

3

沒有,這是沒有必要。 StringSerializable。你可以做這樣的事情:

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同時發送您的命令和對象。

相關問題