获取ObjectOutputStream/ObjectInputStream的进度

Bri*_*ian 0 java sockets progress objectoutputstream objectinputstream

我最近想出了如何使用ObjectOutputStream和ObjectInputStream通过服务器和客户端之间的简单Java套接字连接发送对象.我想知道我是否想要传输一个可能很大的对象,例如一个图像,是否可以设置一个线程来跟踪已经发送/接收了多少数据的进度?如果这个问题的答案不是很直接,有人可以解释一下我可能会做些类似的事吗?提前致谢!

Ste*_*n C 5

Apache Commons IO库有一对类CountingInputStream,CountingOutputStream它们实现字节计数输入/输出流过滤器.

如果将这些插入到流链中,则可以跟踪读取或写入的字节数.(这些过滤器必须插入物理输入/输出流和对象流之间的某处.)

您可以通过子类化FilterInputStreamFilterOutputStream类来自己实现相同的功能.甚至还有被称为Swing类ProgressMonitorInputStream可能实现正是你需要的.