加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

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

发布时间:2020-12-14 06:04:22 所属栏目:Java 来源:网络整理
导读:我的问题在于以下假设,我希望这些假设是正确的,因为我相信这些是我在谷歌搜索我的问题时读到的: 关闭套接字的OutputStream也会关闭套接字 OutputStream的flush()方法什么都不做 所以我基本上需要从我的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()以执行除了任何操作之外的其他操作(将数据写入文件或通过网络发送).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读