我在Java上通过套接字发送文件。
如果我在发送文件后关闭套接字连接,那么这种方法非常有效,因此read方法返回-1。 但我不想关闭套接字,所以我需要一个终止条件。 我试图使用inputStream.available,但它没有返回确切的字节数。
int number;
while((number = inputStream.read(buffer)) != -1) {
fileStream.write(buffer, 0, number);
}
我该怎么做?
答案 0 :(得分:2)
标准模式是首先发送长度,如int
或long
。例如DataInput / OutputStream可以帮助您完成此任务。
当您已阅读此数据量时,您已完成,但连接仍处于打开状态且可以继续使用。