Java IO (3) 字节流介绍

Java 字节流(处理二进制数据)类图如下:

 

输入流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接口对象搭配使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值