JAVA IO流(InputStream,OutputStream)
流按照单位划分有两种:
字节流:以字节为单位读写
字符流:以字符为单位读写
字节流:
InputStream 字节输入流,是抽象类,
抽象了应用程序的[读取]数据方式
OutputStream 字节输出流,是抽象类,
抽象了应用程序的[写出]数据方式
字节流与字符流在类名上就容易区分
字符输入流以Reader结尾,字符输出流以Writer结尾
流按照单位划分有两种:
字节流:以字节为单位读写
字符流:以字符为单位读写
字节流:
InputStream 字节输入流,是抽象类,
抽象了应用程序的[读取]数据方式
OutputStream 字节输出流,是抽象类,
抽象了应用程序的[写出]数据方式
字节流与字符流在类名上就容易区分
字符输入流以Reader结尾,字符输出流以Writer结尾
===========
FileInputStream 文件字节输入流
FileInputStream继承自InputStream,具体实现了对文件的读取数据
FileOutputStream 文件输出流
FileOutputStream继承自OutputStream,具体实现了向文件中写数据
FileInputStream继承自InputStream,具体实现了对文件的读取数据
FileOutputStream 文件输出流
FileOutputStream继承自OutputStream,具体实现了向文件中写数据
====
流分为:
高级流和低级流.
低级流:又称为节点流,明确数据源.
不同的单位区分为:字节流和字符流
高级流:又称为处理流,过滤流.不能独立存在,而是要依托与一个低级流,
在低级流的基础上对读写操作进行封装处理的流
判断是否为高级流:特征是看这个流的构造方法中是否有包含一个流为
参数,若有,这个流就是高级流
DataOutputStream与DataInputStream
BufferedInputStream与BufferedOutputStream
缓冲字节输入/输出流
优点:读写效率高
高级流和低级流.
低级流:又称为节点流,明确数据源.
不同的单位区分为:字节流和字符流
高级流:又称为处理流,过滤流.不能独立存在,而是要依托与一个低级流,
在低级流的基础上对读写操作进行封装处理的流
判断是否为高级流:特征是看这个流的构造方法中是否有包含一个流为
参数,若有,这个流就是高级流
DataOutputStream与DataInputStream
BufferedInputStream与BufferedOutputStream
缓冲字节输入/输出流
优点:读写效率高
=============
字符流(Reader and Writer)
字符流以字符(unicode编码)为单位读写数据.
字符流底层依然是使用字节形式读写
字符流的基本实现:
InputStreamReader:完成byte解析为char的流,按照编码解析
OutputStreamWriter:完成从char编码为byte的流,按照编码解析
BufferedReader:缓冲字符输入流
PrintWriter: 缓冲字符输出流
字符流以字符(unicode编码)为单位读写数据.
字符流底层依然是使用字节形式读写
字符流的基本实现:
InputStreamReader:完成byte解析为char的流,按照编码解析
OutputStreamWriter:完成从char编码为byte的流,按照编码解析
BufferedReader:缓冲字符输入流
PrintWriter: 缓冲字符输出流