• 技术文章 >java >java基础

    java缓冲流的两种类型

    小妮浅浅小妮浅浅2021-03-17 10:16:35原创1590

    为了使程序的读写速度得到提升,设置的缓冲区不是为了阻碍,而是在这个区域内较少流的次数,工作量少了自然效率会进行提高。在缓冲流中有两种类型,分别是字节缓冲流和字符缓冲流,它们都有各自的构造方法,在我们对这些基本理论学习之后,分别进入下一步的各自缓冲流实例学习。

    1.字节缓冲流

    构造方法

    public BufferedInputStream(InputStream in) :创建一个新的缓冲输入流。
    public BufferedOutputStream(OutputStream out): 创建一个新的缓冲输出流。

    实例

    public class Demo03 {
        public static void main(String[] args) throws IOException {
            Long start =System.currentTimeMillis();
            //明确数据源
            FileInputStream fis=new FileInputStream("E:\\shipin\\1.rar");
            //创建字节输入缓冲流
            BufferedInputStream bis=new BufferedInputStream(fis);
            //明确目的地
            FileOutputStream fos=new FileOutputStream("D:\\java\\shipin.rar");
            //创建字节输出缓冲流
            BufferedOutputStream bos=new BufferedOutputStream(fos);
            byte[] bytes=new byte[1024];
            int len=0;
            while((len=bis.read(bytes))!=-1){
                bos.write(bytes,0,len);
            }
            long end=System.currentTimeMillis();
            //释放资源
            bis.close();
            bos.close();
            System.out.println("479MB的压缩包字节缓冲流复制的时间为"+(end-start)+"毫秒值!");
        }
    }

    2.字符缓冲流

    构造方法

    public BufferedReader(Reader in) :创建一个 新的缓冲输入流。
    public BufferedWriter(Writer out): 创建一个新的缓冲输出流。

    实例

    public class Copy {
        public static void main(String[] args) throws IOException {
            //明确数据源
            FileReader fr=new FileReader("D:\\java\\hello.txt");
            //创建字符输入缓冲流
            BufferedReader br=new BufferedReader(fr);
            //明确目的地
            FileWriter fw=new FileWriter("D:\\java\\nihao.txt");
            BufferedWriter bw=new BufferedWriter(fw);
            String line=null;
            while((line=br.readLine())!=null){
                bw.write(line);
                bw.newLine();
                bw.flush();
            }
            bw.close();
            br.close();
        }
    }

    以上就是java缓冲流中两种类型的分享,在不同的条件下,对选择对应的缓冲流进行操作,学会后就赶紧进入实战代码练练手吧。

    (推荐操作系统:windows10系统、java10版,thinkpad t480电脑。)

    专题推荐:java 缓冲流类型
    品易云
    上一篇:IO流序列化在java中的作用及不足 下一篇:java中的轮换流是什么

    相关文章推荐

    • java IO字符流的用法• java字符流和字节流替换方法• java IO流效率对比• IO流在java中的实例操作• java IO流序列化的概念• IO流序列化在java中的作用及不足

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网