什么是IO流
I:input 输入
O:output 输出
流: 数据(字符,字节),1字符 = 2字节 = 16二进制位
输入:把硬盘中的数据读取到内存中使用
输出:把内存中的数据写入到硬盘中存储
Java中字符字节流的顶层父类是:
输入流 输出流
字节流: InputStream OutputSteam
字符流: Reader Writter
字节流
一切皆为字节,电脑中存储的文件都是字节(二进制)形式保存。所以字节流可以传输任意文件数据。
OutputStream输出字节流:抽象类
是所有输出字节流的超类
定义了子类共性的方法:
void |
close()
关闭此输出流并释放与此流相关联的任何系统资源。
|
void |
flush()
刷新此输出流并强制任何缓冲的输出字节被写出。
|
void |
write(byte[] b)
将 b.length 字节从指定的字节数组写入此输出流。
|
void |
write(byte[] b, int off, int len)
从指定的字节数组写入 len 个字节,从偏移 off 开始输出到此输出流。
|
abstract void |
write(int b)
将指定的字节写入此输出流。
|
-
-
-
-
-
已知的子类:
ByteArrayOutputStream , FileOutputStream , FilterOutputStream , ObjectOutputStream , OutputStream , PipedOutputStream - FileOutputStream: 文件字节输出流
-
把内存中的数据写入到硬盘的文件中 -
构造方法 Constructor and Description FileOutputStream(File file)
创建文件输出流以写入由指定的File
对象表示的文件。FileOutputStream(File file, boolean append)
创建文件输出流以写入由指定的File
对象表示的文件。FileOutputStream(FileDescriptor fdObj)
创建文件输出流以写入指定的文件描述符,表示与文件系统中实际文件的现有连接。FileOutputStream(String name)
创建文件输出流以指定的名称写入文件。FileOutputStream(String name, boolean append)
创建文件输出流以指定的名称写入文件。String name : 目的地是一个文件的路径
File file : 目的地只一个文件
构造方法的作用:
1.创建一个对象
2.根据构造方法传递的文件/文件路径,创建一个空的文件
3.会把FileOutputStream对象指向创建好的文件
写入数据的原理(内存->硬盘) :
java程序->JVM->os(操作系统)->os调用写数据的方法->把数据写入到文件中
字节输出流的步骤(重点):
1. 创建一个FileOutputStream对象,构造方法中传入写入数据的目的地
2.调用FileOutputStream对象中的write方法,把数据写入到文件中
3.释放资源
-
已知的子类:
-
-
-