关系
学习IO流前,我们先了解一下相关类之间的关系
字节流
Modifier and Type | 方法 | 描述 | |
---|---|---|---|
1 | int | available() | 从下一次调用此输入流的方法返回可从该输入流读取(或跳过)的字节数,而不会阻塞。 |
2 | void | close() | 关闭此输入流并释放与流相关联的任何系统资源。 |
3 | void | mark(int readlimit) | 标记此输入流中的当前位置。 |
4 | boolean | markSupported() | 测试此输入流是否支持 |
5 | abstract int | read() | 从输入流读取数据的下一个字节。 |
6 | int | read(byte[] b) | 从输入流中读取一些字节数,并将它们存储到缓冲器阵列 |
7 | int | read(byte[] b, int off, int len) | 从输入流读取最多 |
8 | byte[] | readAllBytes() | 从输入流读取所有剩余字节。 |
9 | int | readNBytes(byte[] b, int off, int len) | 将所请求的字节数从输入流读入给定的字节数组。 |
10 | void | reset() | 将此流重新定位到最后在此输入流上调用 |
11 | long | skip(long n) | 跳过并丢弃来自此输入流的 |
12 | long | transferTo(OutputStream out) | 从该输入流中读取所有字节,并按读取的顺序将字节写入给定的输出流。 |
Modifier and Type | 方法 | 描述 | |
---|---|---|---|
1 | void | close() | 关闭此输出流并释放与此流相关联的任何系统资源。 |
2 | void | flush() | 刷新此输出流并强制任何缓冲的输出字节被写出。 |
3 | void | write(byte[] b) | 将 |
4 | void | write(byte[] b, int off, int len) | 从指定的字节数组写入 |
5 | abstract void | write(int b) | 将指定的字节写入此输出流。 |
在IO流操作结束后,应该用close()方法关闭流,从而释放当前IO流所占用的系统资源。flush()方法是将当前输出流缓冲区(通常是字节数组)中的数据强制写入设备。这两个类虽然提供了很多读写方法,但是这两个类是抽象类,不能被实例化,所以要有子类进行继承