2015-08-25 90 views
1

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

如果我在发送文件后关闭套接字连接,这样读取方法返回-1,这会很好地工作。 但我不想关闭套接字,所以我需要终止条件。 我试图使用inputStream.available,但它没有返回确切的字节数。

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

我该怎么做?

回答

2

标准模式是首先发送长度,如intlong。例如DataInput/OutputStream可以帮助你做到这一点。

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

+0

哦,这是一个不错的主意:D我会尝试它 – ForJ9