搜索
您的当前位置:首页java缓冲流的两种类型

java缓冲流的两种类型

时间:2024-07-16 来源:智榕旅游

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

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电脑。)

Top