java中BufferedReader和FileReader怎么用?

StringfileName;Filefile=newFile("E:/"+fileName);BufferedReaderbufferedReader=newBuffe... String fileName;
File file=new File("E:/"+fileName);
BufferedReader bufferedReader=new BufferedReader(new FileReader(file));
中是不是指FileReader的实例对象将fileName文件中的字符读到缓存区,然后BufferedReade的对象将缓存的数据读到程序中。是这样理解吗?如果没有FileReader会怎么样。谢谢
展开
 我来答
千锋教育
2015-12-13 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
java中BufferedReader使用:
b=bf.read())!=-1 每次都会先读取一个字节出来,所以后面的bf.readLine());
读取的就是每行少一个字节
所以,应该使用
String valueString = null;
while ((valueString=bf.readLine())!=null){
System.out.println(valueString);
}
FileWriter类(字符输出流类)
构造方法:FileWriter fw = new FileWriter(String fileName);//创建字符输出流类对象和已存在的文件相关联。文件不存在的话,并创建。
如:FileWriter fw = new FileWriter("C:\\demo.txt");
FileWriter fw = new FileWriter(String fileName,boolean append);//创建字符输出流类对象和已存在的文件相关联,并设置该该流对文件的操作是否为续写。
如:FileWriter fw = new FileWriter("C:\\demo.txt",ture); //表示在fw对文件再次写入时,会在该文件的结尾续写,并不会覆盖掉。
主要方法: void write(String str) //写入字符串。当执行完此方法后,字符数据还并没有写入到目的文件中去。此时字符数据会保存在缓冲区中。此时在使用刷新方法就可以使数据保存到目的文件中去。
viod flush() //刷新该流中的缓冲。将缓冲区中的字符数据保存到目的文件中去。
viod close() //关闭此流。在关闭前会先刷新此流的缓冲区。在关闭后,再写入或者刷新的话,会抛IOException异常。
hit_zippo
推荐于2018-03-13
知道答主
回答量:16
采纳率:0%
帮助的人:25万
展开全部
简单地说java的IO包使用包装器模式设计的,也就是说用FileReader包装了File,又用BufferedReader包装了FileReader,才可以用BufferedReader。BufferedReader不能直接包装File,所以说没有FileReader的话应该会编译不了,因为BufferedReader的构造函数的参数就没有File类型的。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友eab4a8d
2012-11-21 · TA获得超过1824个赞
知道小有建树答主
回答量:549
采纳率:0%
帮助的人:399万
展开全部
小伙子叫这个io的java装饰模式实现。
请关注下设计模式,装饰模式。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式