zoukankan      html  css  js  c++  java
  • BufferInputStream、BufferOutputStream、BufferedReader、BufferedWriter、Java代码使用BufferedReader和BufferedWriter实现文本文件的拷贝

    BufferInputStream和BufferOutputStream的特点:

    缓冲字节输入输出流,缓冲流是处理流,它不直接连接数据源/目的地,而是以一个字节流为参数,在节点流的基础上提供一些简单操作。

    先说不带缓冲流的工作原理吧,它读取到一个字节/字符,就向用户指定的路径写出去,读一个写一个,所以就慢了,带缓冲流的工作原理,读取到一个字节/字符,先不输出,等凑足了缓冲的最大容量后一次写出去,从而提高了工作效率。

    优点:减少对硬盘的读取次数,降低对硬盘的损耗。

    附:

    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.Reader;
    import java.io.Writer;

    /**
    * 使用BufferedReader和BufferedWriter实现文本文件的拷贝
    * @author Administrator
    *
    */
    public class BufferOperateStr {
    public static void main(String[] args) {
    copy();
    }
    static void copy(){
    Reader reader = null;
    BufferedReader br = null;
    Writer writer = null;
    BufferedWriter bw = null;
    try {
    //第一部分:准备从文件读数据到程序
    reader = new FileReader(new File("d://a.txt"));
    //创建缓冲流包装对象reader
    br = new BufferedReader(reader);
    //第二部分:准备从程序写到文件;创建写入对象writer
    writer = new FileWriter(new File("d:\a3.txt"));
    //创建缓冲流包装writer
    bw = new BufferedWriter(writer);
    String str = null;
    //用循环边读边写
    while((str=br.readLine())!=null){
    bw.write(str);
    bw.newLine();
    }
    bw.flush(); //清空缓冲区
    } catch (FileNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }finally{
    try {
    if (bw!=null) {
    bw.close();
    }
    if (br!=null) {
    br.close();
    }
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    }
    }
    }

  • 相关阅读:
    小程序开发系列(五)悬浮搜索框
    LINQ的连接扩展(左连、右连、全连等)
    小程序开发系列(四)九宫格另一种实现
    python 生成随机图片验证码
    django定时任务小插件
    线程池模块thernd
    python logging 模块记录日志
    django Q条件
    jquery 事件绑定
    jQuery示例
  • 原文地址:https://www.cnblogs.com/7758521gorden/p/8046767.html
Copyright © 2011-2022 走看看