0
我正在嘗試使用套接字流進行多個數據傳輸。插座上的多個輸出
- 用於發送文字
- 發送
List<>
- ...
我可以只使用一個插座,用於發送String
,告訴客戶什麼樣的數據,以期待的,其次由預期的數據(在這種情況下爲List<>
)?
這裏就是我想的是:
//declarations
//outputs and inputs
private ObjectInputStream input;
private ObjectOutputStream output;
private OutputStream checkStatus;
private PrintWriter out;
...
private void forwardMessage(List<User> clients) throws IOException {
checkStatus = client.getOutputStream();
out = new PrintWriter(new OutputStreamWriter(checkStatus), true);
out.println("Command Option 1");
client.shutdownOutput();
output = new ObjectOutputStream (client.getOutputStream());
for (int i = 0; i < clients.size(); i++) {
output.flush();
output.writeObject(clients.get(i));
output.flush();
output.reset();
}
output.writeObject(null);
client.shutdownOutput();
}
給予當我嘗試這是「java.net.SocketException: Socket is closed
」
我也試圖關閉的OutputStream但給出相同的結果誤差。
我怎樣才能使用一個流套接字進行多個數據傳輸?
why client.shutdownOutput(); getOutputStream()之前? – kosa 2012-02-02 19:23:27