首页 > 其他 > 详细

13 IO流(十)——BufferedReader/BufferedWriter 装饰流

时间:2019-11-24 21:23:09      阅读:96      评论:0      收藏:0      [点我收藏+]

Buffered字符包装流

与Buffered字节装饰流一样,只不过是对字符流进行包装。

需要注意的地方

Buffered字符流在Reader与Writer上有两个新的方法:String readLine()与 void newLine()

所以Buffered字符流不能够使用多态,也就是:Writer w = new BufferedWriter();

这样虽然不报错,但使用不了新的这两个方法。

构造方法

需要特别提到的一个构造其:BufferedWriter(Writer w,int sz) 它表示创建一个缓冲区大小为sz的缓冲字符输出流。

缓冲字符输入流同理。

案例实现

使用Buffered字符装饰流包装一个File字符流,copy文本文件。

import java.io.*;
/**
*BufferedReader与BufferedWriter
*包装File字符流
*实现纯文本文件的拷贝
*/
public class IOTest02
{
	public static void main(String[] args){
		//文件
		String srcPath = "a.txt";//文件源
		String destPath = "a_cp.txt";//目的地
		copy(srcPath,destPath);
	}

	public static void copy(String srcPath,String destPath){
		//选择流
		//操作
		try(BufferedReader br = new BufferedReader(new FileReader(srcPath));
			BufferedWriter bw = new BufferedWriter(new FileWriter(destPath))){//语法糖关闭流
			String line = null;
			while((line = br.readLine())!=null){//从文件中读一行(找到换行符)
				bw.write(line);//写一行
				bw.newLine();//写一个换行符
			}
			bw.flush();//刷新
		}catch(IOException e){
			e.printStackTrace();
		}
	}

}

  

13 IO流(十)——BufferedReader/BufferedWriter 装饰流

原文:https://www.cnblogs.com/Scorpicat/p/11924122.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!