为了使程序的读写速度得到提升,设置的缓冲区不是为了阻碍,而是在这个区域内较少流的次数,工作量少了自然效率会进行提高。在缓冲流中有两种类型,分别是字节缓冲流和字符缓冲流,它们都有各自的构造方法,在我们对这些基本理论学习之后,分别进入下一步的各自缓冲流实例学习。
1.字节缓冲流
构造方法
publicBufferedInputStream(InputStreamin):创建一个新的缓冲输入流。 publicBufferedOutputStream(OutputStreamout):创建一个新的缓冲输出流。
实例
publicclassDemo03{ publicstaticvoidmain(String[]args)throwsIOException{ Longstart=System.currentTimeMillis(); //明确数据源 FileInputStreamfis=newFileInputStream("E:\\shipin\\1.rar"); //创建字节输入缓冲流 BufferedInputStreambis=newBufferedInputStream(fis); //明确目的地 FileOutputStreamfos=newFileOutputStream("D:\\java\\shipin.rar"); //创建字节输出缓冲流 BufferedOutputStreambos=newBufferedOutputStream(fos); byte[]bytes=newbyte[1024]; intlen=0; while((len=bis.read(bytes))!=-1){ bos.write(bytes,0,len); } longend=System.currentTimeMillis(); //释放资源 bis.close(); bos.close(); System.out.println("479MB的压缩包字节缓冲流复制的时间为"+(end-start)+"毫秒值!"); } }
2.字符缓冲流
构造方法
publicBufferedReader(Readerin):创建一个新的缓冲输入流。 publicBufferedWriter(Writerout):创建一个新的缓冲输出流。
实例
publicclassCopy{ publicstaticvoidmain(String[]args)throwsIOException{ //明确数据源 FileReaderfr=newFileReader("D:\\java\\hello.txt"); //创建字符输入缓冲流 BufferedReaderbr=newBufferedReader(fr); //明确目的地 FileWriterfw=newFileWriter("D:\\java\\nihao.txt"); BufferedWriterbw=newBufferedWriter(fw); Stringline=null; while((line=br.readLine())!=null){ bw.write(line); bw.newLine(); bw.flush(); } bw.close(); br.close(); } }
以上就是java缓冲流中两种类型的分享,在不同的条件下,对选择对应的缓冲流进行操作,学会后就赶紧进入实战代码练练手吧。
原文来自:https://www.py.cn
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容