IO就是输入输出,输出流可以理解为向目标写入数据,输入流可以理解为从源地址读取。流是一组有序的数据序列。
输入流 | 输出流 | |
字节流 | InputStream | OutputStream |
字符流 | Reader | Writer |
输入流
InputStream类是字节输入流的抽象类,是所有字节输入流的父类。该类中所有方法遇到错误时都会引发IOException异常。
1. read()方法
2. read(byte[] b)方法
3. mark(int readlimit)方法
4. reset()方法
5. skip(long n)方法
6. markSupported()方法
7. close()方法
Reader类是字符输入流的抽象类,所有字符输入流的实现都是它的子类。
输出流
OutputStream类是字节输出流的抽象类,此抽象类是表示输出字节流的所有类的父类。OutputStream类中的所有方法都是返回void,遇到错误时会引发IOException异常。
1. write(int b)方法
2. write(byte[] b)方法
3. write(byte[] b, int off, int len)方法
4. flush()方法
5. close()方法
Writer类是字符输出流的抽象类,所有字符输出类的实现都是它的子类。
File类
File类是java.io包中唯一代表磁盘文件本身的对象。
文件的创建与删除:1. File file = new File("d:/word.txt"); 2. File file = new File(String parent, String child); 3. File file = new File(File f, String child);
获取文件信息:
方法 | 返回值 | 说明 |
getName() | String | 获取文件的名称 |
canRead() | boolean | 判断文件是否是可读的 |
canWrite() | boolean | 判断文件是否是可被写入 |
exists() | boolean | 判断文件是否存在 |
length() | long | 获取文件的长度(以字节为单位) |
getAbsolutePath() | String | 获取文件的绝对路径 |
getParent() | String | 获取文件的父路径 |
isFile() | boolean | 判断文件对象是否是文件 |
isDirectory() | boolean | 判断文件对象是否是目录 |
isHidden() | boolean | 判断文件对象是否是隐藏文件 |
lastModified() | long | 获取文件的最后修改时间 |