2020-08-31 IO流

IO流

一、IO流分类:

①按数据传输方法划分:
	输入流 输出流
②按读写数据的方式划分:
	字节流 字符流
③按功能划分:
	基础流 包装流

二、字节流:

1.字节输入流:FileInputStream

  • public int read(){}。
  • .public int read(byte[] b){}。
  • public int read(byte[] b,int off,int len){}。
    特点:每次读取单个字节的方式读取整个文件的内容
    优化:每次读取单个字节的方式读取整个文件的内容。这样会频繁访问磁盘,造成效率低下。
    因此,创建一个字节数组作为缓冲区

1.字节输出流:FileOutputStream

  • public void write(int n){}。
  • public void write(byte[] b){}。
  • public void write(byte[] b,int off,int len){}。
    public int read(byte[] b)。
    特点:从流中读取多个字节,将读到内容存入b数组,返回实际读到的字节数。
       如果达到文件的尾部,则返回-1。

三、字符流:

1.字符抽象类

Reader:字符输入流

  • public int read(){}。
  • public int read(char[] c){}。
  • public int read(char[] b,int off,int len){}。

Writer:字符输出流

  • public void write(int n){}。
  • public void write(String str){}。
  • public void write(char[] c){}。

2.字符节点流

FileWrite:

  • public void write(String str) 。
  • 一次写多个字符,将b数组中所有字符,写入输出流

FileReader:

  • public int read(char[] c) 。
  • 从流中读取多个字符,将读到内容存入c数组,返回实际读到的字符数,如果达到文件的尾部,则返回-1。

你可能感兴趣的:(Java基础,java)