我正在制作一个简单的TCP/IP套接字应用

这样做之间有什么不同:

DataInputStream in = new DataInputStream(clientSocket.getInputStream());

byte[] buffer = new byte[100];
in.readFully(buffer);

与这样做:
DataInputStream in = new DataInputStream(clientSocket.getInputStream());

byte[] buffer = new byte[100];
in.read(buffer);

我看了看文档,它们具有完全相同的描述。 readFully() read()
那我可以假设它是同一件事吗?

最佳答案

DataInput.readFully(byte[] b)的Javadoc指出:


DataInputStream.read(byte[] b)的Javadoc指出:



基本上,readFully()会精确地读取b.length字节,而read()最多可以读取b.length,也许更少,无论输入流中有什么可用。

关于java - DataInputStream.read()与DataInputStream.readFully(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25897627/

10-10 09:54