尚硅谷:http://www.gulixueyuan.com/course/311
InputStream & Reader
-
InputStream 和 Reader 是所有输入流的基类。
-
InputStream(典型实现:FileInputStream)
-
int read()
-
read(byte[] b)
-
int read(byte[] b, int off, int len)
-
-
Reader(典型实现:FileReader)
-
int read()
-
int read(char [] c)
-
int read(char [] c, int off, int len)
-
-
程序中打开的文件 IO 资源不属于内存里的资源,垃圾回收机制无法回收该资 源,所以应该显式关闭文件 IO 资源。
-
FileInputStream 从文件系统中的某个文件中获得输入字节。FileInputStream 用于读取非文本数据之类的原始字节流。要读取字符流,需要使用 FileReader
InputStream
int read()
- 从输入流中读取数据的下一个字节。返回 0 到 255 范围内的 int 字节值。如果因 为已经到达流末尾而没有可用的字节,则返回值 -1。
int read(byte[] b)
- 从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中。如果因为已 经到达流末尾而没有可用的字节,则返回值 -1。否则以整数形式返回实际读取 的字节数。
int read(byte[] b, int off,int len)
- 将输入流中最多 len 个数据字节读入 byte 数组。尝试读取 len 个字节,但读取 的字节也可能小于该值。以整数形式返回实际读取的字节数。如果因为流位于 文件末尾而没有可用的字节,则返回值 -1。
public void close() throws IOException
- 关闭此输入流并释放与该流关联的所有系统资源
Reader
int read()
- 读取单个字符。作为整数读取的字符,范围在 0 到 65535 之间 (0x00-0xffff)(2个 字节的Unicode码),如果已到达流的末尾,则返回 -1
int read(char[] cbuf)
- 将字符读入数组。如果已到达流的末尾,则返回 -1。否则返回本次读取的字符数。
int read(char[] cbuf,int off,int len)
- 将字符读入数组的某一部分。存到数组cbuf中,从off处开始存储,最多读len个字 符。如果已到达流的末尾,则返回 -1。否则返回本次读取的字符数。
public void close() throws IOException
- 关闭此输入流并释放与该流关联的所有系统资源