在java输入输出流中,为什么BufferedReader没有flush()方法

[复制链接]
查看11 | 回复5 | 2018-3-26 10:25:31 | 显示全部楼层 |阅读模式
在java输入输出流中,BufferedReader没有flush方法,BufferedWriter有flush方法;这是因为flush方法的作用和功能是向外做输出,将内存中的数据提交输出到外部文件当中,在BufferedWriter中,因为是对外做写操作,因此是有提交输出的flush方法的;而在BufferedReader对象中,因为它的作用是用来从外部读取文件内容到内存中,因此不存在向外做提交输出的操作,因此没有flush方法。...
回复

使用道具 举报

千问 | 2018-3-26 10:25:31 | 显示全部楼层
在这之前需搞清楚一个问题,BufferedReader是将文件读取到内存中,而BufferedWriter使将文件从内存中写入本地文件中,两者区别不言而喻。Flush() 是清空,而不是刷新主要用在IO中,即清空缓冲区数据,如果在Reader以后你来个flush(),你想想看,刚读取到内存中的数据就会被清空掉。而Writer以后,数据已经被保存到文件中,...
回复

使用道具 举报

千问 | 2018-3-26 10:25:31 | 显示全部楼层
flush方法的作用是强制写入,自然只有Writer才有...
回复

使用道具 举报

千问 | 2018-3-26 10:25:31 | 显示全部楼层
这个很常识啊
flush目的是什么?他是吧缓冲区中的内容输出,记住是输出啊 输入没必要了是吧...
回复

使用道具 举报

千问 | 2018-3-26 10:25:31 | 显示全部楼层
flush()是刷新把Writer里面的内容写进文件Reader不要flush()...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行