美文网首页
字符缓冲流BufferedReader和BufferWriter

字符缓冲流BufferedReader和BufferWriter

作者: 卓昂芭比 | 来源:发表于2018-12-27 18:19 被阅读0次

1.缓冲流

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

2)BufferedWriter:从字符输出流中读取文本,缓冲各个字符,从而实现单个字符、数组和字符串的高效读取。

创建缓冲流的对象

String s1=源文本;

String s2=新文本;

BufferedReader br=new BufferedReader(new FileReader(s1));

读数据:一次读写一个字符

int ch;

while((ch=br.read())!=-1){

bw.write((char)ch);

bw.flush();

}

               一次读写一个字符数组

char[] ch=new char[1024];

int rr;

while((rr=br.read(ch))!=-1){

bw.write(ch, 0, rr);

bw.flush();

}

代码示例练习:

package BufferedSystem;

import java.io.BufferedReader;

import java.io.FileNotFoundException;

import java.io.FileReader;

import java.io.IOException;

public class BufferedReaderTest1 {

public static void main(String[] args) throws IOException {

BufferedReader br=new BufferedReader(new FileReader("FileWriterTest1.java"));

//读取文件,1.一次读取一个字符

/*int ch;

while((ch=br.read())!=-1){

System.out.print((char)ch);*/

//2.一次读写一个字符数组

char[] chs=new char[1024];

int len;

while((len=br.read(chs))!=-1){//读取数据时,从数组集合中读取,当读取到末尾时,数值为-1;

System.out.print(new String(chs,0,len));//将一次读取的字符数组转换为字符串输出

}

br.close();

}

}

BufferedWriter bw=new BufferedWriter(new FileWriter(s2));

构造方法:bw.writer("Hello");

刷新数据:bw.flush();

释放资源:bw.close();

代码示例练习:

package BufferedSystem;

import java.io.BufferedWriter;

import java.io.FileWriter;

import java.io.IOException;

public class BufferedWriterTest2 {

public static void main(String[] args) throws IOException {

BufferedWriter bw=new BufferedWriter(new FileWriter("a.txt"));

bw.write("Hello");

bw.write("world");

bw.close();

}

}

缓冲流复制文本练习

需求:将项目路径下FileWriterTest1.java中的内容复制到CopyCop.java中

public class BufferedRWriterTest3 {

public static void main(String[] args) throws IOException {

BufferedReader br=new BufferedReader(new FileReader("FileWriterTest1.java"));

BufferedWriter bw=new BufferedWriter(new FileWriter("a.txt"));

//读文件1.一次读取一个字符

int ch;

while((ch=br.read())!=-1){

bw.write((char)ch);

}

br.close();

bw.close();

}

}

3:字符缓冲流的特殊功能

1)BufferedWriter

           void newLine();写一个换行符,这个换行符由系统决定

2)BufferedReader

         void readLine();//一次读取一行数据,但不读取换行符

创建输出对象

写数据    换行   bw.newLine();

创建输入对象

public class BufferedWriterTest {

public static void main(String[] args) throws IOException {

BufferedWriter bw=new BufferedWriter(new FileWriter("b.txt"));

bw.write("hello");

//BufferedWriter

    //    void newLine()//写一个换行符,这个换行符由系统决定

bw.newLine();

bw.write("world");

bw.close();

}

}

读数据  String readLine();    String line=br.readLine();当数据为空时,为null

代码示例实现

public class BufferedReaderTest5 {

public static void main(String[] args) throws IOException {

BufferedReader br=new BufferedReader(new FileReader("FileWriterTest1.java"));

BufferedWriter bw=new BufferedWriter(new FileWriter("cbb.txt"));

String line;

while((line=br.readLine())!=null){

bw.write(line);

bw.newLine();

}

bw.close();

br.close();

}

}

相关文章

  • 字符缓冲流BufferedReader和BufferWriter

    1.缓冲流 1)BufferedReader:将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的...

  • JAVA的字符流操作

    在IO流中对于带缓冲的字符流,我们可以使用BufferedReader的read()方法读取字符时会一次读取若干字...

  • BufferedReader 字符读取流缓冲区

    import java.io.BufferedReader; import java.io.BufferedWri...

  • Java I/O 流相关类介绍

    Java 的数据流分为 字符流和字节流。 实例://使用 BufferedReader 在控制台读取字符 以上实例...

  • java033字符缓冲流

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

  • BufferedReader

    java.io.*中有一个类叫BufferedReader; 从字符输入流中读取文本,缓冲各个字符,从而实现字符、...

  • 缓冲流

    缓冲流是为了读取和写入的速度,提高效率主要包括:字节缓冲流和字符缓冲流 字节缓冲流: 根据流的方向,共有2个:字节...

  • Java自学-I/O 缓存流

    Java 缓存流BufferedReader,PrintWriter 以介质是硬盘为例,字节流和字符流的弊端:在每...

  • java034缓冲流的特殊功能复制文本

    缓冲流的特殊功能复制文本 package day04; import java.io.BufferedReader...

  • 2020-06-30【字符流】

    字节缓冲流 字符流 编码表 字符流写数据的5中方式 字符流读取数据的2种方式 练习 字符缓冲流 IO流小结

网友评论

      本文标题:字符缓冲流BufferedReader和BufferWriter

      本文链接:https://www.haomeiwen.com/subject/avrdlqtx.html