目录
2)BufferedReader类(带缓冲区的读取文件,速度更快)
1.IO流简介
I:input 输入
O:output 输出
IO流就是用来进行输入和输出操作的流
可以把流看作是一根水管,你可以借助这根水管来向水箱内注入水,也可以把水箱内的水放出来
*注意:流只能是单方向的,也就是说,一根水管只能进行放水和注水之间的一个操作
简而言之:IO流就是相当于在内存和磁盘之间提供了相互读写的操作的渠道
2.字符流
2.1简介
字符流:以字符为单位进行读写操作(在java中一个字符占2个字节)
继承关系:
(标红的为抽象类)
Reader
2.2字符流中的常用方法
Reader抽象类(写入)
常用方法:
int read() 读取单个字符
int read(char[] cbuf) 将字符读入数组
abstract int read(char[] cbuf, int off, int len) 将字符读入数组的某一部分
int read(CharBuffer target) 试图将字符读入指定的字符缓冲区
abstract void close() 关闭该流并释放与之关联的所有资源
1)FileReader类(读取字符文件)
构造方法
FileReader(File file) 创建一个新的 FileReader ,给出 File读取。 |
FileReader(String fileName) 创建一个新的 FileReader ,给定要读取的文件的名称。 |
2)BufferedReader类(带缓冲区的读取文件,速度更快)
构造方法(可以自己指定缓冲区大小,也可以直接用默认的)
BufferedReader(Reader in) 创建使用默认大小的输入缓冲区的缓冲字符输入流。 |
BufferedReader(Reader in, int sz) 创建使用指定大小的输入缓冲区的缓冲字符输入流。 |
Writer抽象类
常用方法:
Abstract void close() 关闭此流,但要先刷新它
Void write(char[ ] cbuf) 写入字符数组
Void write(int c) 写入单个字符
Void write(String str) 写入字符串
Void write(String str,int off,int len) 写入字符串的某一部分
Abstract void write(char[] cbuf,int off,int len)写入字符数组的某一部分
同上
3.字节流
3.1简介
字节流:以字节为单位进行读写操作(Byte)
继承关系:
InputStream
FileInputStream
BufferedInputStream
ObjectInputStream
OutputStream
FileOutputStream
BufferedOutputStream
ObjectOutputStream
3.2常用方法
InputStream抽象类
常用方法:
abstract int read() 从输入流中读取数据的下一个字节
int read(byte[] b) 从输入流中读取一定数量的字节,并将其存储在缓冲区数组 b 中
int read(byte[] b, int off, int len) 将输入流中最多 len 个数据字节读入 byte 数组,off表示存时的偏移量
void close() 关闭此输入流并释放与该流关联的所有系统资源
1)FileInputStream子类
构造方法:
FileInputStream(File file) 通过打开与实际文件的连接创建一个 |
FileInputStream(String name) 通过打开与实际文件的连接来创建一个 |
2)BufferedInputStream子类
构造方法:
BufferedInputStream(InputStream in) 创建一个 |
BufferedInputStream(InputStream in, int size) 创建 |