• IO流之缓冲流


    Java中提高了一套缓冲流,它的存在,可提高IO流的读写速度

    缓冲流,根据流的分类分类字节缓冲流与字符缓冲流。

    1.字节缓冲流

    它们的内部都包含了一个缓冲区,通过缓冲区读写,就可以提高了IO流的读写速度

    1.1  字节缓冲输出流BufferedOutputStream

    1.2字节缓冲输入流BufferedInputStream

     1.3添加缓冲流复制文件

     1 public class demo03 {
     2     public static void main(String[] args) throws IOException {
     3         //明确数据源
     4         FileInputStream fis = 
     5                 new FileInputStream("D:\video\a.wmv");
     6         //添加缓冲流
     7         BufferedInputStream bis = new BufferedInputStream(fis);
     8         //明确目的地
     9         FileOutputStream fos = 
    10                 new FileOutputStream("D:\io0429\hello\a.wmv");
    11         //添加缓冲流
    12         BufferedOutputStream bos = new BufferedOutputStream(fos);
    13         //单个字节数组复制
    14         byte[] bytes = new byte[1024];
    15         int len = 0;
    16         while((len = bis.read(bytes)) != -1){
    17             bos.write(bytes, 0, len);
    18         }
    19         //释放资源
    20         bis.close();
    21         bos.close();
    22     }
    23 }

     

    2.字符缓冲流

    它们的内部都包含了一个缓冲区,通过缓冲区读写,就可以提高了IO流的读写速度

    2.1字符缓冲输出流 BufferedWriter

     字符缓冲输出流中,新增加了一个方法,是按照"行"来进行写入。

    2.2字符缓冲输入流 BufferedReader

      字符缓冲输入流中,也新增加了一个方法,是按照"行"来进行读取。行读取到末尾时,它的返回值是null而不是-1

    2.3通过"行"读取写入来复制文件

     1     public static void main(String[] args) throws IOException {
     2         //明确数据源
     3         FileReader fr = new FileReader("D:\io0429\demo01.txt");
     4         //添加缓冲流
     5         BufferedReader br = new BufferedReader(fr);
     6         //明确目的地
     7         FileWriter fw = new FileWriter("D:\io0429\demo05.txt");
     8         //添加缓冲流
     9         BufferedWriter bw = new BufferedWriter(fw);
    10         String line = null;
    11         while((line = br.readLine()) != null){
    12             bw.write(line);
    13             bw.newLine();
    14             bw.flush();
    15         }
    16         //释放资源
    17         bw.close();
    18         br.close();
    19     }
  • 相关阅读:
    小记---------idea新手操作
    超时问题
    python-post
    python之cookies
    python 爬虫--下载图片,下载音乐
    如何获取字符串中某个具体的数值--通过json.load转化成字典形式获取
    json
    斐波那契数列
    约瑟夫环
    python 求从1加到100的和,join的用法
  • 原文地址:https://www.cnblogs.com/shenhx666/p/15065040.html
Copyright © 2020-2023  润新知