缓冲流
Posted zqy6666
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了缓冲流相关的知识,希望对你有一定的参考价值。
缓冲流:提高IO流的读写速度
根据流的分类分类字节缓冲流与字符缓冲流
字节缓冲流
写入数据到流中,字节缓冲输出流 BufferedOutputStream
读取流中的数据,字节缓冲输入流 BufferedInputStream
利用字节缓冲流复制 文件 比字节流复制(大文件) 速度快
代码
package com.oracle.demo01; import java.io.BufferedOutputStream; import java.io.FileOutputStream; import java.io.IOException; public class Demo3 { public static void main(String[] args) throws IOException { //明确目的地 FileOutputStream fos=new FileOutputStream("D:\demo1018\buffer.txt",true); //添加缓冲流 BufferedOutputStream bos=new BufferedOutputStream(fos); /*//一个字节一个字节写 bos.write(100);*/ byte bytes[]={66,65,67,68}; bos.write(bytes); //释放资源 bos.close(); } } package com.oracle.demo01; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.IOException; public class Demo4 { public static void main(String[] args) throws IOException { //明确数据源 FileInputStream fis=new FileInputStream("D:\demo1018\buffer.txt"); //添加缓冲流 BufferedInputStream bis=new BufferedInputStream(fis); //一个字节一个读 int len=0; while ((len=bis.read())!=-1) { System.out.println((char)len); } //释放资源 bis.close(); } } package com.oracle.demo01; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class Copy { public static void main(String[] args) throws IOException { //明确数据源 FileInputStream fis=new FileInputStream("D:\demo1018\buffer.txt"); //明确目的地 FileOutputStream fos=new FileOutputStream("D:\demo1018\a\buffer2.txt",true); //添加缓冲流 BufferedInputStream bis=new BufferedInputStream(fis); BufferedOutputStream bos=new BufferedOutputStream(fos); /*单个复制 int len=0; while ((len=bis.read())!=-1) { bos.write(len); }*/ //字节数组复制 byte bytes[]=new byte[1024]; int len=0; while ((len=bis.read(bytes))!=-1) { bos.write(bytes,0,len); } //释放资源 bis.close(); bos.close(); } }
以上是关于缓冲流的主要内容,如果未能解决你的问题,请参考以下文章