美文网首页
IO流——处理流

IO流——处理流

作者: DOB_8199 | 来源:发表于2021-02-17 14:57 被阅读0次

    处理流之一:缓冲流

    处理流,就是“套接”在已有的流的基础上。

    1. 缓冲流

    BufferedInputStream

    BufferedOutputStream

    BufferedReader

    BufferedWriter

    2.作用

    提高读写速度的原因:内部提供了一个缓冲区

    3.使用

    用 BufferedInputStream 拿复制举例


    1)造文件

                File srcFile =new File("爱情与友情.jpg");

                File destFile =new File("爱情与友情3.jpg");

    2)造流

        2.1 造节点流

                FileInputStream fis =new FileInputStream((srcFile));

                FileOutputStream fos =new FileOutputStream(destFile);

        2.2 造缓冲流

                bis =new BufferedInputStream(fis);

                bos =new BufferedOutputStream(fos);

    3)复制的细节:读取、写入

                byte[] buffer =new byte[10];

                int len;

                while((len = bis.read(buffer)) != -1){

                    bos.write(buffer,0,len);

                    // bos.flush();    // 手动刷新缓冲区(系统会自动刷新缓冲区)

                }

    4)资源关闭

    要求:先关闭外层的流,再关闭内层的流

        4.1关闭外层:

                if(bos !=null){

                    bos.close();}

                if(bis !=null){

                    bis.close();}

        4.2关闭内层:

            fos.close();

            fis.close();

    说明

    1. 关闭外层流的同时,内层流也会自动的进行关闭。关于内层流的关闭,我们可以省略.

    2. 若使用BufferedReader和BufferedWriter实现文本文件的复制,可使用String去代替使用char[]数组

                String data;

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

                      bw.write(data + "\n");    //data中不包含换行符

                    换行的方式二:

                      bw.write(data);    //data中不包含换行符

                      bw.newLine(); }    //提供换行的操作

    相关文章

      网友评论

          本文标题:IO流——处理流

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