FileInputStream 和 FileOutputStream是文件的数据和输出流 分别继承java.io.InputStream和java.io.OutputStream 两个抽象类
在输入流输出流的基础上 增加了FileDescriptor 变量 该变量为保存了操作系统层面的文件的句柄信息,实现对文件的读写操作
FileInputStream
方法变量
FileOutputStream
方法变量
核心方法
/**
* 通过构造方法传入file文件或文件绝对路径
*/
public FileInputStream(String name) throws FileNotFoundException {
this(name != null ? new File(name) : null);
}
public FileInputStream(File file) throws FileNotFoundException {
String name = (file != null ? file.getPath() : null);
SecurityManager security = System.getSecurityManager();
if (security != null) {
security.checkRead(name);
}
if (name == null) {
throw new NullPointerException();
}
if (file.isInvalid()) {
throw new FileNotFoundException("Invalid file path");
}
fd = new FileDescriptor();
fd.attach(this);
path = name;
open(name);
}
/**
* append 参数决定是否从文件末尾写入
*/
public FileOutputStream(String name, boolean append)
throws FileNotFoundException
{
this(name != null ? new File(name) : null, append);
}
public FileOutputStream(File file) throws FileNotFoundException {
this(file, false);
}
其他 read/write 方法均为native 方法