1、普通输入输出类
1.1 InputStream类型:用来表示从不同数据源产生输入的类,数据源包括
字节数组
String对象
文件
管道:工作方式与实际管道相似,从一端输入,从另一端输出;
一个由其他种类的流组成的序列,以便可以将它们收集合并到一个单一的流内;
1.1.1 每一种数据源都有相应的InputStream子类。
1.1.2 FilterInputStream也属于一种InputStream,为“decorator”类提供基类,而“decorator”类可以把属性或有用的
接口与输入流连接在一起
1.1.3 InputStream的子类
子类 | 功能
| 构造器参数
|
ByteArrayInputStream
| 允许将内存的缓冲区当作InputStream使用 |
|
StringBufferInputStream
| 将String转换为InputStream
|
|
FileInputStream
| 用于从文件中读取信息
|
|
PipedInputStream
| 产生用于写入相关PipedOutputStream
|
|
SequenceInputStream
| 将两个或多个InputStream对象转换成单一InputStream
|
|
FilterInputStream
| 作为修饰器的接口,其中,修饰器为其他的InputStream类提供有用功能
|
|
1.2 OutputStream类型:用来把产生的数据源输出到不同的数据源中,这些数据源包括
字节数组(非字符串)
文件或管道
1.2.1 OutputStream的子类
子类
| 功能
| 构造器参数
|
ByteArrayOutputStream
| 在内存中创建缓冲区,所有送往stream的数据都要放置在此缓冲区
|
|
FileOutputStream
| 用于将信息写至文件
|
|
PipedOutputStream
| 传送输出流可以连接到传送输入流,以创建通信管道。传送输出流失管道的发送端
|
|
1.3 FilterInputStream类:能够完成两件完全不同的事情
类 | 功能
| 构造器参数
|
DataInputStream
| 与DataOutputStream搭配使用,故可安装可移植方式从流读取基本数据类型(int,char,long)
|
|
BufferedInputStream
| 使用它可以防止每次读取是都得进行实际写操作
|
|
LineNumberInputStream
| 跟踪输入流中的行数,可调用getLineNumber()和setLineNumber(int)读取和设置行号
|
|
PushbackInputStream
| 具有“one byte push-back buffer”,因此可以将读到的最后一个字符回退
|
|
1.4 FilterOutputStream类
类
| 功能
| 构造器参数
|
DataOutputStream
| 与DateInputStream搭配使用,可以按照可移植方式向流中写入基本类型数据(int,char,long)
|
|
PrintStream | 用于产生格式化输出,其中DataOutputStream处理数据的存储,PrintStream处理显示
|
|
BufferedOutputStream
| 使用它可以避免每次发送数据时都要进行实际的写操作,代表“使用缓冲区”,可以调用flush()清空缓冲区
|
|
原标题:流式I/O和文件
关键词: