OutputStreamWriter out = new OutputStreamWriter(sock.getOutputStream());
out.write(data);
out.flush();
sock - Socket;数据 - 字符缓冲区;Android:OutputStreamWriter在刷新后没有发送数据(套接字)
因此,如果我不会关闭“out”或“sock”,那么就没有数据会被发送到服务器。
OutputStreamWriter out = new OutputStreamWriter(sock.getOutputStream());
out.write(data);
out.close();
很好。但为什么?
这不应该发生。关闭输出流将关闭套接字,这有时绝对不是你想要的。你确定没有数据被发送到服务器?套接字是否包裹了一个频道? –
是的,我确定。服务器端恶魔也是由我写的。所以我有很多调试信息。套接字是包装?这是关于什么的? –
如果套接字是从[SocketChannel](http://developer.android.com/reference/java/nio/channels/SocketChannel.html)创建的,则套接字封装通道。既然你问这是什么意思,我猜你的套接字没有包装一个频道。 –