从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取,代码中使用了输入缓冲区的特有的方法:readLine(),获取一行文本数据

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException; public class BufferedReaderDemo { /**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException { FileReader fr=new FileReader("Demo.txt");
BufferedReader bufr=new BufferedReader(fr);
String line=null;
while((line=bufr.readLine())!=null){
System.out.println(line);
}
} public static void demo() throws FileNotFoundException, IOException {//此方法是不使用缓冲区的常规方法
FileReader fr=new FileReader("Demo.txt");
char buf[]=new char[1024];
int len=0;
while((len=fr.read(buf))!=-1){
System.out.println(new String(buf,0,len));
}
} } 将文本写入字符输出流,缓冲各个字符,从而实现字符、数组和字符串的高效读取,代码中使用了输入缓冲区的特有的方法:nextLine(), 写入一个行分隔符。 package IODemo; import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException; public class BufferedWriterDemo { private static final String SEPARATOR = System.getProperty("line.separator"); /**
* @param args
* @throws IOException
*/
/*
* 為了提高写入的效率,使用了字符流的缓冲区
* 创建了一个字符写入流的缓冲区对象,并要和指定的被缓冲的对象
* 相关联
*/
public static void main(String[] args) throws IOException { FileWriter fw=new FileWriter("Demo2.txt");
BufferedWriter bufw=new BufferedWriter(fw);
//使用缓冲区的方法将数据写入到缓冲区汇总
bufw.write("abc0"+SEPARATOR+"abc4");
// bufw.newLine();
bufw.write("abc1");
// bufw.newLine();
bufw.write("abc2");
for(int i=1;i<=4;i++){
bufw.write("Java"+i);
//使用缓冲区的刷新方法将数据刷新到目的地
bufw.flush();
}
//关闭缓冲区,其实关闭的就是被缓冲的流对象
bufw.close();
} }

字符流缓冲区的使用之BufferedWriter和BufferedReader的更多相关文章

  1. 牛客网Java刷题知识点之字符流缓冲区、BufferedWriter、BufferedReader、BufferedReader-readLine方法原理、自定义MyBufferedReader-read方法、自定义MyBufferedReader-readLine方法

    不多说,直接上干货! 把提高效率的动作,封装成一个对象.即把缓冲区封装成一个对象. 就是在一个类里封装一个数组,能对流锁操作数据进行缓存. 什么是字符流缓冲区? 善于使用字符流缓冲区,减轻负担,提高下 ...

  2. Java:IO流之字符流缓冲区详解

    字符流缓冲区: 1.缓冲区的出现提高了对数据的读写效率: 2.对应类:BufferedWriter.BufferedReader: 3.缓冲区要结合流才可以使用: 4.在流的基础上对流的功能进行了增强 ...

  3. 字符流-缓冲区-自定义myBufferedReader

    public class myBufferedReaderDemo { public static void main(String[] arg) throws IOException{ FileRe ...

  4. 字符流缓冲区BufferedReader之readLine方法的原理

  5. IO流(字节流,字符流)

    一,概述 IO流(input output):用来处理设备之间的数据. Java对数据的操作是通过流的对象. Java用于操作流的对象都在IO包中. 流是一组有顺序的,有起点和终点的字节集合,是对数据 ...

  6. java-I/O File类(5)-Reader和Writer、OutputStreamWriter 、BufferedWriter、字节流和字符流的区别

      标签: outputstreamwriterreader字符file方法 2015-05-14 23:06 469人阅读 评论(0) 收藏 举报  分类: 孙鑫-java基础(16)  I-O(4 ...

  7. 十八、Java基础--------IO流体系以及字符流

    在上一章节中详细介绍集合框架的相关知识,在接下来的几篇文章中将讲述Java中另一个及其重要的知识——IO流,本文主要是讲述IO流的一些基本概念以及字符流的相关应用. IO流 介绍IO流之前先介绍一下什 ...

  8. java IO之 字符流 (字符流 = 字节流 + 编码表) 装饰器模式

    字符流 计算机并不区分二进制文件与文本文件.所有的文件都是以二进制形式来存储的,因此, 从本质上说,所有的文件都是二进制文件.所以字符流是建立在字节流之上的,它能够提供字符 层次的编码和解码.列如,在 ...

  9. Java基础---IO(一)---IO流概述、字符流、字节流、流操作规律

    第一讲     IO概述 概述 1.IO流:即InputOutput的缩写. 2.特点: 1)IO流用来处理设备间的数据传输. 2)Java对数据的操作是通过流的方式. 3)Java用于操作流的对象都 ...

随机推荐

  1. CURL 多线程问题

    http://blog.csdn.net/wslz2001/article/details/12117127 默认情况下libcurl完成一个任务以后,出于重用连接的考虑不会马上关闭 如果没有新的TC ...

  2. spring transactionmanager

    Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. DataSo ...

  3. 如何用Java语言向串口读写数据

    原作者:赛迪网作者 shihuchen ,我在他的基础上进行了部分修改 [赛迪网讯]串口, RS-232-C(又称EIA RS-232-C,以下简称RS232)是在1970年由美国电子工业协会(EIA ...

  4. HeadFirst设计模式之观察者模式

    一.什么是观察者模式 观察者模式定义了一系列对象间一对多的关系,当主题对象的状态发生变化时,会通知所有观察者 二.自定义观察模式 1. 2. package headfirst.designpatte ...

  5. altium designer 13 学习之添加汉字

    在altium desginer中如果你是想添加英文还是比较方便的,基本直接就可以输入了,但是添加中文就不是那么简单了,下面不介绍下如何在altium designer中快速的添加自己想要的中文 工具 ...

  6. GNU :6.47 Function Names as Strings

    链接:http://gcc.gnu.org/onlinedocs/gcc/Function-Names.html#Function-Names GCC provides three magic var ...

  7. MyBatis的分页操作(MySQL)

    1.无条件分页: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC ...

  8. UnsupportedClassVersionError: Bad version number in...

    在使用eclipse开发servlet可能会出现一个很麻烦事情,版本不一致错误. java.lang.UnsupportedClassVersionError: Bad version number ...

  9. nyist 737 相邻石子合并问题

    http://acm.nyist.net/JudgeOnline/problem.php?pid=737 动态规划状态方程: dp[i][j]=d[i][k]+dp[k+1][j]+(sum[k]-s ...

  10. C#中种常用的计时器

    1.System.Timers.Timer和System.Windows.Forms.Timer,它的最低识别为1/18s. 2.timeGetTime,他的最低识别能达到5ms. 3.System. ...