10.4 缓冲流 BufferedReader & BufferedWriter& 缓冲流特殊功能readLine

缓冲流和正常流的使用大致相同,缓冲流效率更高。

package day10_io_fileWrite_Read.buffer_stream;

import java.io.*;

/*
 * BufferedWriter:将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。
 * BufferedReader:从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。
 */
public class BufferedStream {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new FileReader("c.txt")); //bufferedreader(reader)
        BufferedWriter bw = new BufferedWriter(new FileWriter("copy.txt"));

//        //一次读写一个字符
//        int len;
//        while((len=br.read())!=-1) {
//            bw.write(len);
//        }
//
        //一次读写一个数组
        char[] arr = new char[1024];
        int len1;
        while((len1=br.read(arr))!=-1) {
            bw.write(arr);
        }

        bw.close();
        br.close();
    }
}

二、缓冲流特殊功能--一次读写一行数据(不读取换行符)

package day10_io_fileWrite_Read.buffer_stream;

import java.io.*;

/*
 * 缓冲流的特殊功能:
 * BufferedWriter
 *         void newLine():写一个换行符,这个换行符由系统决定
 * BufferedReader
 *         String readLine():一次读取一行数据,但是不读取换行符
 */
public class BufferLine {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new FileReader("b.txt"));
        BufferedWriter bw = new BufferedWriter(new FileWriter("copy.txt"));

        /*一次读取一行
        String line = br.readLine();
        System.out.println(line);
        line = br.readLine();
        System.out.println(line);//当行读完时返回为null
        */

        String len;
        while((len=br.readLine())!=null) {
            bw.write(len);
            bw.newLine();
            bw.flush();
        }

        bw.close();
        br.close();
    }
}

原文地址:https://www.cnblogs.com/longesang/p/11083606.html

时间: 2024-10-08 02:12:14

10.4 缓冲流 BufferedReader & BufferedWriter& 缓冲流特殊功能readLine的相关文章

java缓冲流,BufferedReader,BufferedWriter 详解

缓冲流,BufferedReader,BufferedWriter 1)BufferedReader,BufferedWriter是更高级的流,二者的源和目的地必须是字符输入流和字符输出流.如果把字符输入流做为BufferedReader流的源,把字符输出流作为BufferedWriter流的目的地,那么BufferedReader,BufferedWriter将有更强的读.写能力. //构造函数 BufferedReader(Reader in); BufferedWriter(Writer

缓冲流之字符缓冲流

字符缓冲流 字符缓冲输入流 BufferedReader 字符缓冲输出流 BufferedWriter 完成文本数据的高效的写入与读取的操作 1  字符缓冲输出流 BufferedWriter void newLine() 根据当前的系统,写入一个换行符 public static void method01() throws IOException{ //明确目的地 FileWriter fw =new FileWriter("E:\\java\\demo01.txt"); //添加

java字节缓冲流和字符缓冲流

一.字节缓冲流 1.介绍 字节缓冲流根据流的方向,分为: 1.写入数据到流中,字节缓冲输出流 BufferedOutputStream 2.读取流中的数据,字节缓冲输入流 BufferedInputStream 它们的内部都包含了一个缓冲区,通过缓冲区读写,就可以提高了IO流的读写速度 2.字节缓冲输出流BufferedOutputStream 构造方法: public BufferedOutputStream(OutputStream out):创建一个新的缓冲输出流,以将数据写入指定的底层输

Java IO 转换流 字节转字符流

Java IO 转换流 字节转字符流 @author ixenos 字节流 输入字节流:---------| InputStream 所有输入字节流的基类. 抽象类.------------| FileInputStream 读取文件的输入字节流.------------| BufferedInputStream 缓冲输入字节流. 该类内部其实就是维护了一个8kb(8192b)字节数组而已. 该类出现的目的是为了提高读取文件数据的效率. 输出字节流:---------| OutputStream

Java基础知识强化之IO流笔记37:字符流缓冲流之BufferedWriter / BufferedReader使用

1. 字符流缓冲流: 字符流为了高效读写,也提供了对应的字符缓冲流. BufferedWriter:字符缓冲输出流 BufferedReader:字符缓冲输入流 2. BufferedWriter使用:     将文本写入字符输出流,缓冲各个字符,从而提供单个字符.数组和字符串的高效写入.可以指定缓冲区的大小,或者接受默认的大小.在大多数情况下,默认值就足够大了. (1)BufferedWriter的构造方法: 构造方法摘要 BufferedWriter(Writer out)         

【IO流】25 - 字符流 - 字符输出流的缓冲流以及字符输入流的缓冲流BufferedWriter和BufferedReader

package cn.itcast.demo2; import java.io.BufferedWriter; import java.io.FileWriter; import java.io.IOException; /* * 字符输出流缓冲区流 * java.io.BufferedWriter 继承 Writer * 写入方法 write () 单个字符,字符数组,字符串 * * 构造方法: * BufferedWriter(Writer w)传递任意字符输出流 * 传递谁,就高效谁 *

BufferedReader,缓冲输入字符流

1. /** * 输入字符流: * --------|Reader 所有输入字符流的基类.抽象类 * -----------|FileReader 读取文件字符串的输入字符流. * -----------|BufferedReader 缓冲输入字符流.目的是:提高读取效率和拓展FileReader的功能.(该类内部也是维护了字节数组) */ public class Demo1 { public static void main(String[] args) throws IOException

模拟字符缓冲读入流:BufferedReader

/* * 模拟字符缓冲读入流:BufferedReader * * 分析: * 1.要属于流的体系 * 2.要有一个Reader类型的成员变量 * 3.要有一个带参数的构造方法接收外部传入的流对象 * 4.模拟readLine(),实现读一行的功能 * 5.关闭流 */ import java.io.FileReader; import java.io.IOException; import java.io.Reader; //1.要属于流的体系 class MyBufferedReader e

Java I/O流操作(二)---缓冲流[转]

转自:http://blog.csdn.net/johnny901114/article/details/8710403 一.BufferWriter类 IO的缓冲区的存在就是为了提高效率,把要操作的数据放进缓冲区,然后一次性把缓冲区的内容写到目的地,而不是写一次就往目的地写一次. 在这里要注意的是当我们关闭了缓冲区对象实际也关闭了与缓冲区关联的流对象. BufferWriter类 try { FileWriter fw =new FileWriter("test.txt"); //使