zoukankan      html  css  js  c++  java
  • beanshell必备:IO流使用简单总结

    字节流

    |-InputStream
        |-FileInputStream,文件字节输入流;属于节点流
        |-ByteArrayInputStream,字节数组输入流;属于节点流
        |-ObjectInputStream,读取对象,即反序列化;属于包装流
    |-OutputStream
        |-FileOutputStream,文件字节输出流;属于节点流
        |-ByteArrayOutputStream,字节数组输出流;属于节点流
        |-ObjectOutputStream,写入对象,即序列化;属于包装流
    

    字符流

    |-Reader
        |-FileReader,文件字符输入流;属于节点流
        |-BufferedReader,缓冲字符输入流;属于包装流
        |-InputStreamReader,将字节输入流转换为字符输入流;属于转换流
    |-Writer
        |-FileWriter,文件字符输出流;属于节点流
        |-BufferedWriter(缓冲字符输出流;属于包装流) / PrintWriter(打印流,功能更强操作简单;属于包装流)
        |-OutputStreamWriter,将字节输出流转换字符输出流;属于转换流
    

      

    总结:
    字节流:
      1、可以读、写自定义大小的字节数组;byte[] buffer = new byte[1024 * 1024 * 10]; // 每次读取10M;
      2、【推荐】如果是操作非二进制文件,可以通过转换流转换为字符流,然后用缓冲字符输入输出流(字符流无法读写二进制文件);
      3、如果操作二进制文件,用对象字节输入输出流;
     
    文件字符流:
      1、可以读、写自定义大小的字符数组,char[] buffer = new char[50]; // 每次读取50个字符;
      2、【推荐】但是,最好用缓冲字符输入输出流,可以按行读、写,另外,输出都用PrintWriter
     
    能用缓冲字符流的用缓冲字符流,输出都用PrintWriter。

  • 相关阅读:
    Delphi关于记录文件的操作转
    数字电视分辨率
    delphi FileSetAttr 设置文件的属性转
    vc delphi 回调函数具体说明和实例与分析 转
    TFileStream(文件流) 读写转
    HDMI接口
    UDP和TCP协议包大小的计算转
    字符编解码的故事(ASCII,ANSI,Unicode,Utf8) 转
    [bzoj3894]文理分科
    [bzoj5338]xor
  • 原文地址:https://www.cnblogs.com/uncleyong/p/14097107.html
Copyright © 2011-2022 走看看