关于FileInputStream和FileOutputStream输入流与输出流问题二

前一阵子写了篇博客是关于什么是输入流什么是输出流的文章。今天打开读了一读觉得写得还是不够清晰,所以今天我再写一篇文章来补充一下上篇文章,顺便做个笔记和大家共同学习进步。
这里先把上篇文章的地址复制过来:关于FileInputStream和FileOutputStream输入流与输出流问题
上一篇文章中有这么一段话

书上说
输入流:只能从中读取数据,不能向其写入数据。
输出流:只能向其写入数据,不能从中读取数据。

这句话,乍一看上去挺容易理解的,但是我们到后来再去看的时候又有一些迷糊了。
因为字面上看的话,输入流:不应该是往其中写入数据的吗?输出流: 不应该是把数据输出吗?为什么书上说的和我们看到的字面的意思正好相反呢?

下面我举一个聊天软件的例子来说明一下输入流和输出流的概念

比方说我们现在用的是两台电脑上的两个非常简单的类似QQ的聊天软件,为了复杂问题简单化就不多讲连接方面的问题了。当两台电脑互相线上之后,那么就开始聊天了。

聊天内容是通过什么来传输的呢,就是我们学的IO流,现有两个客户端A和B,现在A–>B ,A向B发送了消息,那么A主机中的流发送消息,所以是输出流,B主机中的流接收消息所以是输入流。这点弄明白的话就好办了。
下面,既然A主机中是输出流,那么必然从A主机中输出了一些信息给B,所以A主机中带的输出流必然承载了信息,那么这些信息肯定是A给它的,所以,这个输出流就是A向其中写入数据,然后传输给B,这就是上面的那段话,输出流:只能向其写入数据,不能从中读取数据

同理,B主机中的是来自A的流,对B来说就是输入流,因为是A发送来给B的,而这个输入流中含有A发送的信息,B要读取输入流中的信息,所以,就是从输入流中读取输信息,也应了前面那句话了。
输入流:只能从中读取数据,不能向其写入数据。
这样的话,大家对输入流和输出流的理解就能更加深刻了。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值