IO原理与概念

一:流: 流动、流向 从一端移动到另一端 源头与目的地
二:程序 与(文件 | 数组 | 网络连接 | 数据库),以程序为中心

三:IO流分类
1. 流向:
输入流和输出流
2. 数据:
字节流:二进制,可以一切文件,包括 纯文本 、doc、 音频、视频等。
字符流:文本文件,只能处理纯文件。
3. 功能:
节点:包裹源头
处理:增强功能,提供性能

  • 字符流与字节流(重点)与文件
    1. 字节流:
      输入流:InputStream 、read(byte[] b)、read(byte[] b, int off, int len) + close()、FileInputStream;
      输出流:OutputStream、write(byte[] b)、write(byte[] b, int off, int len) + flush()、 + close()、FileOutputStream();
    2. 字符流:
      输入流:Reader read(char [] cbuf)、read(char[] cbuf, int off, int len)+close()、FileReader;
      输出流:Writer write(char [] cbuf)、write(char[] cbuf, int off, int len)+flush()+close()、write(String str, int off, int len)、FileWriter;

四:操作

1.举例:搬家        ---》读取文件
  1)、关联房子     ---》建立与文件联系
  2)、选择搬家      ---》选择对应流
  3)、搬家         ---》读取|写出
     a)、卡车大小   ---》数组大小
     b)、运输      ---》读取、写出
  4)、打发Over    ----》释放资源

2.操作
  1).建立联系
  2).选择流
  3).操作 数组大小  read write

你可能感兴趣的:(JavaSE前面的总结)