美文网首页
2020-09-17 Java缓冲流、转换流

2020-09-17 Java缓冲流、转换流

作者: flynnny | 来源:发表于2020-09-17 18:19 被阅读0次

    缓冲流也叫高效流,是对4个基本的FIleXXX流的增强
    字节缓冲流:BufferedInputStream、BufferedOutputStream
    字符缓冲流:BufferedReader、BufferedWriter
    原理:创建流对象时,会创建一个内置默认大小的缓冲区数组,减少IO次数从而提高效率。

    一、字节缓冲流

    构造方法
    public BufferedInputStream(InputStream in);
    public BufferedOutputStream(OutputStream out);

    1.1BufferedOutputStream
    流11.png

    demo:简单使用

    流12.png
    1.2BufferedInputStream
    流13.png

    demo:简单使用

    流14.png

    二、字符缓冲流

    构造方法
    public BufferedReader(Reader in);
    public BufferedWriter(Writer out);

    2.1BufferedWriter

    特有的方法:void newLine();会根据操作系统获取不同的行分隔符

    流15.png

    demo:简单使用

    流16.png
    2.2BufferedReader

    特有的方法:String readLine();读一行(\n、\r、\r\n),读到末尾返回null!!!

    流17.png

    demo:简单使用

    流18.png

    三、转换流

    流19.png

    编码引出的问题
    Windows使用的默认字符集为GBK;IDE默认格式为UTF-8编码
    所以fileReader读取GBK文本会出问题

    3.1OutputStreamReader

    可以使用指定的charset将要写入流的字符编码成字节

    流21.png

    demo:简单使用

    流22.png
    3.2InputStreamReader

    可以使用指定的charset读取字节并将其解码为字符

    流20.png

    demo:简单使用

    流23.png

    相关文章

      网友评论

          本文标题:2020-09-17 Java缓冲流、转换流

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