Android Java: Receive Image over Socket
我在套接字上有一个通讯应用程序。
客户端将图像发送到服务器:
1 2 3 4 5 6 7 8 | ByteArrayOutputStream stream = new ByteArrayOutputStream(); bmp.compress(Bitmap.CompressFormat.PNG, 100, stream); byte[] byteArray = stream.toByteArray(); OutputStream os; try { os = MyClient.socket.getOutputStream(); os.write(byteArray,0,byteArray.length); os.flush(); |
在服务器端,我想接收图像,但此刻它仅显示许多不同的字符。如果客户端只是发送文本,我会收到:
1 2 | BufferedReader input = new BufferedReader(new InputStreamReader(s.getInputStream())); String text = input.readLine(); |
但是我如何在服务器端"解码"字节[]?
类似于您发送该图像的方式。只需使用如下的
1 2 3 | InputStream stream = socket.getInputStream(); byte[] data = new byte[MAX_SIZE]; int count = stream.read(data); |
这两个对象(发送和接收)都是兼容的,您只需要知道