java IO体系结构(二) 字节流

来源:互联网 发布:防火墙软件测评 编辑:程序博客网 时间:2024/05/27 21:50

输入流InputStream


InputStream

采用了装饰器模式。

 

InputStream类型:


功能

构造器函数

如何使用

ByteArrayInputStream

允许将内存的缓冲区当作InputStream 使用

缓冲区,字节将从中取出

作为一种数据源:将其与FilterInputStream对象相连以提供有用的接口

StringBuffterInputStream

将String 转换成InputStream

字符串。底层实际使用StringBuffter

作为一种数据源:将其与FilterInputStream对象相连以提供有用的接口

FileInputStream

用于从文件中读取信息

字符串,表示文件名、文件或FileDescriptor对象

作为一种数据源:将其与FilterInputStream对象相连以提供有用的接口

PipedInputStream

产生用于写入相关PipedOutStream的数据。实现“管道化”概念

PipedOutStream

作为多线程中数据源:将其与FilterInputStream对象相连以提供有用的接口

SequenceInputStream

将两个或多个InputStream对象转换成单一InputStream

两个InputStream对象或一个容纳InputStream对象的容器Enumeration

作为一种数据源:将其与FilterInputStream对象相连以提供有用的接口

ObjectInputStream

对以前使用ObjectOutputStream 写入的基本数据和对象进行反序列化

InputStream

作为一种数据源:将其与FilterInputStream对象相连以提供有用的接口

FilterInputStream

抽象类,作为“装饰器”的接口。其中,“装饰器”为其他的InputStream类提供有用的功能

见下表


 


FilterInputstream类型:


功能

构造器函数

如何使用

DataInputStream

DataOutStream搭配使用,因此我们可以按照可移植方式从流读取基本数据类型(int char long等)

InputStream

包含用于读取基本类型数据的全部接口

BufferedInputStream

使用它可以防止每次读取时都得进行实际的写操作。代表“使用缓冲区”

InputStream,可以指定缓冲区大小(可选的)

InputStream接口对象搭配使用

LineNumberInputStream

跟踪输入流的行号,可调用getLineNumber()和setLineNumber(int)

InputStream

仅增加了行号,与InputStream接口对象搭配使用

PushbackInputStream

具有“能弹出一个字节的缓冲区”,因此可以将读到的最后一个字符回退。

InputStream

通常作为编译器的扫描器,之所以包含在内是因为Java编译器的需要,我们可能永远不会用到

 

 

 

输出流OutputStream


OutputStream

 

采用了装饰器模式。

 

OutputStream类型:


功能

构造器函数

如何使用

ByteArrayOutputStream

在内存中创建缓冲区。所有送往“流”的数据都要放置在此缓冲区

缓冲区初始化大小(可选的)

指定数据的目的地:将其与FilterOutputStream对象相连以提供有用的接口

FileOutputStream

用于将信息写入文件

字符串,表示文件名、文件或FileDescriptor对象

指定数据的目的地:将其与FilterOutputStream对象相连以提供有用的接口

PipedOutputStream

任何写入其中的信息都会自动作为相关PipedInputStream的输出。实现“管道化”概念

PipedInputStream

指定用于多线程的数据的目的地:将其与FilterOutputStream对象相连以提供有用的接口

ObjectOutputStream

ObjectOutputStream 将 Java对象的基本数据类型和图形写入OutputStream

指定数据的目的地:将其与FilterOutputStream对象相连以提供有用的接口

FilterOutputStream

抽象类,作为“装饰器”的接口。其中,“装饰器”为其他的OutputStream类提供有用的功能

见下表

 

 

FilterOutputStream类型:


功能

构造器函数

如何使用

DataOutputStream

DataInputStream搭配使用,因此我们可以按照可移植方式向流中写入基本数据类型(int char long等)

OutputStream

包含用于写入基本类型数据的全部接口

PrintStream

用于产生格式化输出。其中DataOutputStream处理数据的存储,PrintStream处理显示

OutputStream,可以用boolean值指示是否在每次换行时清空缓冲区(可选的)

最常用的是System.out

BufferedOutputStream

使用它避免每次发送数据时都得进行实际的写操作。代表“使用缓冲区”。可以调用flush清空缓冲区

OutputStream,可以指定缓冲区大小(可选的)

OutputStream接口对象搭配使用

原创粉丝点击