基本IO操作思维导图

  • 格式:pdf
  • 大小:145.86 KB
  • 文档页数:1

将指定 byte 数组中从偏移量 off 开始的 len 个字节写入文件
举个栗子
继承自 InputStream
可使 用
Int read(byte[] d) 方法 Int read() 方法
批量读写
已字节为单位 数据读取
构造方法 创建流读取数据 文件
文件 File 对象
FileInputStream ( File file )
不提供 根据类信息 计算默认

声明的类序列化存盘后,若随着需求改变 了类的属性(增加或减少或改名),反序 列化会出现异常,造成不兼容问题。但当 serialVersionUID 相同时,它就会将不一 样的 filed 以 type 的预设值反序列化,可 避开不兼容问题。
注意
平台
稳定 不同 实现
不稳定
特定地方链接 其他流
节点流 处理流
特定地方(节点) 读写数据
实现

处理
已存在的流
封装
流向的功能
调用
必须
构造方法
参数
其他流
多次包装
流的链接
一套 API 文件
file 对象
FileOutputStream(File file)
指定名称
FileOutputStream(String filename)
重写

BufferedInputStream 内部
缓冲区 (字节数组)
尽可 能多
这是 个大 栗子
缓冲 流
基本原理
写出操作
次数多
低 硬件 效率
BOS
缓冲输出流 BOS 批量数据 一次性

BufferedOutputStream
内部
维护一缓冲区
写满 写入
问题
不及时

必须
不满




某些操作结束
希望
数据
解决
Void flush() 方法 清空缓存
强制
byte
读取频繁

基本原理
读取操作
硬件
BIS
批量 读写次数少
将给定数组的字节全部写出 void write(byte[]d)
内到外
常用方法
OutputStream
所有字节输出流 父类
IO 抽 象类
扩展后
基本 IO 操作

Object readObject()
ObjectInputStream(OIS) 输入流 使用
举个
大 栗子
方法
void writeObject(Object o)
追加
创建流写入数据
构造方法
数据写入
文件 流
创建 FOS 对象 字节输出流
字节输入流 创建 FIS 对象
以字节为单位 继承自 OutputStream
文件
可使 用
Void write(int d) 方法 Void write(byte[] d) 方法
Void write(byte[] d ,int offset ,int len) 单字节 读写
读取数据
有效
返回
所有字节输入流
外到内 父类
低八位
int
读取 1byte
int read ( 个 byte int read(byte[] d)
常用方法
InputStream
返回值 int
实际读取字节数
写出数据
低八位
int 写出 1 个 byte void write(int d)
File file = new File (“ demo.dat” ) ; FileInputStream fis = new FileInputStream(file); 创建一个用于读取文件 demo.dat 的输入流
举个栗子
指定路径名称 FileInputStream ( String name ) FileInputStream fis = new FileInputStream(“demo.dat”)
设备
字节序列
反序列化
不同
转移
字节序列
对象 序列化
ObjectOutputStream(OOS) 输出流 使用
概念
对象 流
不必要
关键字
transient
修饰
属性
忽略


要求
实现 不需重写任何方法 Serializable 接口
个 大

只做可序列化标志

提供 常量 serialVersionUID 表明类的版本 最好