我正在尝试通过 java 套接字发送文件并通过另一个套接字接收它。但是,会发生这种情况:
发送内容:
/* 这只是一个要传输的文件 */
已收到:
所以基本上我无法在堆栈溢出时逃避接收到的内容。它基本上是一堆不可读的字节(大约 32 个字节),然后是我发送的消息。
OutputStream os = sock.getOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(os);
oos.writeObject(mybytearray);
oos.flush();
oos.close();
对于客户:
BufferedReader in = new BufferedReader(new InputStreamReader(sock.getInputStream()));
FileOutputStream fos = new FileOutputStream("newfile.java");
BufferedOutputStream bos = new BufferedOutputStream(fos);
bytesRead = is.read(mybytearray,0,mybytearray.length);
current = bytesRead;
bos.write(mybytearray, 0 , current);
bos.flush();
bos.close();
sock.close();