java – 如何在不关闭OutputStream对象的情况下强制刷新它?

前端之家收集整理的这篇文章主要介绍了java – 如何在不关闭OutputStream对象的情况下强制刷新它?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的问题在于以下假设,我希望这些假设是正确的,因为我相信这些是我在谷歌搜索我的问题时读到的:

>关闭套接字的OutputStream也会关闭套接
> OutputStream的flush()方法什么都不做

所以我基本上需要从我的OutputStream对象中刷新数据,以使我的应用程序正常工作.

如果您对详细信息感兴趣,请参阅以下两个链接

. Weird behavior : sending image from Android phone to Java server (code working)

通过关闭OutputStream解决了此问题.这样做会将所有数据刷新到套接字的另一端并使我的应用程序进一步工作但是这个修复很快引起了问题2 – 相应的套接字也被关闭

. SocketException – ‘Socket is closed’ even when isConnected() returns true

解决方法

您可以调用OutputStream的flush方法而不是close.从OutputStream继承的具体类将覆盖flush()以执行除了任何操作之外的其他操作(将数据写入文件或通过网络发送).

猜你在找的Java相关文章