0
点赞
收藏
分享

微信扫一扫

java 基础之I/O流

InputStream 抽象父类
OutputStream 抽象父类

方向 单位 功能

FileInputStream 输入流 字节流 节点流
int read()
方法直接返回读到的数据
int read(byte[] data)
方法返回实际读取的字节个数
int read(byte[] data,int off,int len)
方法同样返回实际读取的字节个数

FileOutputStream 输出流 字节流 节点流
void write(int data)
void write(byte[] data)
void write(byte[] data,int off,int len)
*:输出流连接的文件 无论是否存在都会自动地被新文件替换
*:构造方法第二个参数 true 代表追加模式打开源文件
*:输出流连接的目录如若不存在 直接出现异常
*:输入流和输出流 不能连续的创建并且指向同一文件

为节点流添加缓冲空间 从而提高每次读写的数据量 从而降低读写次数 提高效率
BufferedInputStream 输入流 字节流 过滤流
int read(byte[] data,int off,int len)
BufferedOutputStream 输出流 字节流 过滤流
void write(byte[] data,int off,int len);
清空缓冲区的条件:
1 缓冲空间满了
2 关闭流 bos.close();
3 手动清空 flush();
构造方法(节点流,缓冲空间大小)

为节点流添加读写基本数据类型内存原型的功能
DataInputStream 输入流 字节流 过滤流
DataOutputStream 输出流 字节流 过滤流、

Reader
Writer

FileReader
int read()
int read()
int read()
FileWriter
void write(int data)
void write(char[] data)
void write(char[] data,int off,int len)

BufferedReader
readLine()
BufferedWriter
write(String) newLine() *:flush()/close()

PritnStream 字节
PrintWriter 字符
1.既能当作节点流 又能当作过滤流
2.既可以连接字节流 又可以连接字符流
3.可以在构造方法第二个参数指定autoFlush 自动清空缓冲
4.可以在构造方法第二个参数指定字符集
5.我们对它一点也不陌生 用法等价于System.out
println() = write() + newLine()

桥转换器
InputStreamReader
OutputStreamWriter

举报

相关推荐

0 条评论