黑马程序员——JAVA学习笔记(七)

------- android培训java培训、期待与您交流! ----------

七、字符流的缓冲区

缓冲区的出现提高了对数据读写的效率;

缓冲区要结合流才能使用;

在流的基础上对流的功能进行了增强。


对应类:

7.1、BufferedWriter类

将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。

可以指定缓冲区的大小,或者接受默认的大小。在大多数情况下,默认值就足够大了。

该类提供了 newLine() 方法,它使用平台自己的行分隔符概念,此概念由系统属性 line.separator 定义。并非所有平台都使用新行符 ('\n') 来终止各行。因此调用此方法来终止每个输出行要优于直接写入新行符。 

使用示例:

class BufferedWriter
{
	public static void main(String[] args)
	{
		//创建一个字符写入流
		FileWriter fw = new FileWriter("buff.txt");

		//为了提高字符写入流效率,加入了缓冲技术
		//只要讲需要被条效率的流对象作为参数传递给缓冲区的构造函数即可
		BufferedWriter buf = new BufferedWriter(fw);
		buf.write("avasd");

		//换行方法
		buf.newLine();
		
		//只要用到缓冲去,就要刷新
		buf.flush();
		
		//关闭缓冲区,就是在关闭缓冲区中的流对象
		buf.close(); 
	}
}


7.2、BufferedReader类

从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。 
可以指定缓冲区的大小,或者可使用默认的大小。大多数情况下,默认值就足够大了。 

使用示例:

class BufferedWriter
{
	public static void main(String[] args) 
	{
		//创建一个读取流对象和文件相关联
		FileReader fr = new FileReader("buf".txt);

		//为了提高效率,加入缓冲技术,将字符读取流对象作为参数传递给缓冲对象的构造函数
		BufferedReader bufr = new BufferedReader(fr);

		String line = null;

		while((line = bufr.readLine())!=null)
		{
			System.out.print(line);
		}

		bufr.close();
	}
}

该缓冲区提供了一个一次读一行的方法——readLine,方便于对文本数据的获取。当返回null时,表示独到文件末尾。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值