通过套接字发送文件 - 终止条件

时间:2015-08-25 15:58:37

标签: java sockets java-io

我在Java上通过套接字发送文件。

如果我在发送文件后关闭套接字连接,那么这种方法非常有效,因此read方法返回-1。 但我不想关闭套接字,所以我需要一个终止条件。 我试图使用inputStream.available,但它没有返回确切的字节数。

int number;
while((number = inputStream.read(buffer)) != -1) {
    fileStream.write(buffer, 0, number);
} 

我该怎么做?

1 个答案:

答案 0 :(得分:2)

标准模式是首先发送长度,如intlong。例如DataInput / OutputStream可以帮助您完成此任务。

当您已阅读此数据量时,您已完成,但连接仍处于打开状态且可以继续使用。