因爲InputStream只能進行一遍完整的讀過程,之後裏面就沒有數據了,當我們需要讀不止一次時,需要先複製出來。
ByteArrayOutputStream baos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int readLen;
try {
while ((readLen = clientSocket.getInputStream().read(buffer)) != -1) {
baos.write(buffer, 0 ,readLen);
} catch (IOException e) {}
InputStream ips1 = new ByteArrayInputStream(baos.toByteArray());
InputStream ips2 = new ByteByteArrayInputStream(baos.toByteArray());