Java的IO输入输出

一、概念

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()
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).搬家      ——>读取|写出
 4).打开over    ——>释放资源
2.操作
1).建立联系
2).选择流
3).操作 数组大小+read、write
4).释放资源

一、读取文件