|
在整个Java.io 包中最重要的就是5个类和一个接口。5个类指的是File、InputStream、OutputStream、Reader、Writer;一个接口指的是 Serializable。掌握了这些IO的核心操作那么对于Java中的IO体系也就有了一个初步的认识了。
一、IO概述
IO(Input/Output):即输入和输出.
下图是一个描述输入流和输出流的类层次图

1、File类和四大基流
File类(文件特征与管理):Java中 File类(文件、目录和文件过滤器)
四大基流:( InputStream字节输入流,OutputStream字节输出流,Reader字符输入流,Writer字符输出流 )
四大基流都是抽象类,其他流都是继承于这四大基流的,我们并不能创建这四大基流对象来执行输入/输出,只能创建其子类对象。它们的方法是所有输入/输出流都可使用的方法。
在InputStream/Reader中的一些方法:
abstract int | read() 从输入流中读取数据的下一个字节。 | int | read(byte[] b) 从输入流中读取一定数量的字节,并将其存储在缓冲区数组 b 中。 | int | read(byte[] b, int off, int len) 将输入流中最多 len 个数据字节读入 byte 数组。 | int | read() 读取单个字符。 | int | read(char[] cbuf) 将字符读入数组。 | abstract int | read(char[] cbuf, int off, int len) 将字符读入数组的某一部分。 | void | close() 关闭此输入流并释放与该流关联的所有系统资源。 | void | mark(int readlimit) 在此输入流中标记当前的位置。 | boolean | markSupported() 测试此输入流是否支持 mark 和 reset 方法。 | void | reset() 将此流重新定位到最后一次对此输入流调用 mark 方法时的位置。 | long | skip(long n) 跳过和丢弃此输入流中数据的 n 个字节。 |
在OutputStream/Writer中的一些方法:
void | write(byte[] b) 将 b.length 个字节从指定的 byte 数组写入此输出流。 | |
|