BufferedWriter_字符缓冲输出流和BufferedReader字符缓冲输入流

BufferedWriter_字符缓冲输出流

java.io.BufferedWriter extends Writer

BufferedWriter:字符缓冲输出流

继承自父类的共性成员方法:

Writer append(char c)
将指定的字符附加到此作者。
Writer append(CharSequence csq)
将指定的字符序列附加到此作者。
Writer append(CharSequence csq, int start, int end)
将指定字符序列的子序列附加到此作者。
abstract void close()
关闭流,先刷新。
abstract void flush()
刷新流。
void write(char[] cbuf)
写入一个字符数组。
abstract void write(char[] cbuf, int off, int len)
写入字符数组的一部分。
void write(int c)
写一个字符
void write(String str)
写一个字符串
void write(String str, int off, int len)
写一个字符串的一部分

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

构造方法:

BufferedWriter(Writer out)
创建使用默认大小的输出缓冲区的缓冲字符输出流。
BufferedWriter(Writer out, int sz)
创建一个新的缓冲字符输出流,使用给定大小的输出缓冲区。 

 

 

 

 

特有的成员方法:

void newLine()
写一行行分隔符。会根据不同的操作系统,获取不同的行分隔符

 

 

 

换行:换行符号

windows:\r\n

linux:\n

mac:\r

使用步骤:

  1.创建字符缓冲输出流对象,构造方法中传递字符输出流

  2.调用字符缓冲输出流中的方法write,把数据写入到内存缓冲区中

  3.调用字符缓冲输出流中的方法flush,把内存缓冲区中的数据。刷新到文件中

  4.释放资源

复制代码
public class DemoBufferedWriter {
    public static void main(String[] args) throws IOException {
        BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("a.txt"));
        for (int i = 1; i <=10 ; i++) {
            bufferedWriter.write("黑马");
            bufferedWriter.newLine();//一行的分隔符
        }

        bufferedWriter.close();
    }
}
复制代码

 

BufferedReader字符缓冲输入流

java.io.BufferedReader extends Reader

继承自父类的共性成员方法:

abstract void close()
关闭流并释放与之相关联的任何系统资源。
void mark(int readAheadLimit)
标记流中的当前位置。
boolean markSupported()
告诉这个流是否支持mark()操作。
int read()
读一个字符
int read(char[] cbuf)
将字符读入数组。
abstract int read(char[] cbuf, int off, int len)
将字符读入数组的一部分。
int read(CharBuffer target)
尝试将字符读入指定的字符缓冲区。
boolean ready()
告诉这个流是否准备好被读取。
void reset()
重置流。
long skip(long n)
跳过字符 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

构造方法:

BufferedReader(Reader in)
创建使用默认大小的输入缓冲区的缓冲字符输入流。
BufferedReader(Reader in, int sz)
创建使用指定大小的输入缓冲区的缓冲字符输入流。

 

 

 

 

特有的成员方法:

String readLine()
读一行文字。 

 

 

行的终止符号:通过下列字符之一即可认为某行已终止:换行(‘\n’),回车(‘\r’)或回车后直接跟着换行(\r\n)

使用步骤:

1.创建字符缓冲流对象,构造方法中传递字符输入流

2.使用字符缓冲输入流对象中的方法read/readLine读取文本

3.释放资源

复制代码
    public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader = new BufferedReader(new FileReader("a.txt"));
//        String s = bufferedReader.readLine();//读取一行
//        System.out.println(s);
//
//        String s2 = bufferedReader.readLine();//读取一行
//        System.out.println(s2);
//
//        String s3 = bufferedReader.readLine();//读取一行
//        System.out.println(s3);
        /*
            发现以上读取是一个重复的过程,所以可以使用循环优化
            不知道文件中有多少行数据,所以使用while循环
            while的结束条件,读取到null结束
         */
        String line;
        while ((line=bufferedReader.readLine())!= null){
            System.out.println(line);
        }
复制代码

 

posted @   monkey大佬  阅读(74)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示