作者sean2449 (肉鬆)
看板AndroidDev
標題[問題] 有關於Socket 傳送和接收byte[]的問題
時間Wed Aug 24 22:28:13 2011
小弟最近要寫一個Server and Client的程式
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] b = baos.toByteArray();
其中bmp是Client端用相機照起來的圖檔
Client用
DataOutputStream output = new DataOutputStream(clientSocket.getOutputStream());
output.write(b);
output.flush();
然後Server接收端用
byte[] receive = new byte[2048];
DataInputStream input = new DataInputStream(socket.getInputStream());
while ( input.read(receive) != -1 ) {
....
....
}
但是Server端似乎會停在input.read就不動了
或是有其他方法能夠傳送嗎??
拜託大神們救救小弟吧Q_Q
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.144.132
→ Killercat:你的socket確定是對的嗎 TCP來講有Listen/Accept socket 08/25 05:48
→ Killercat:不是new一個Socket就能用的 08/25 05:48
推 LaPass:ServerSocket SS = new ServerSocket(你的port); 08/25 07:59
→ LaPass:Socket S = SS.Accept(); 08/25 08:00
→ LaPass:Server端要這樣寫,大小寫以及拼字我沒檢查。 08/25 08:00
→ LaPass:還有,沒收到東西的話,程式會停在input.read()那邊沒錯 08/25 08:01