12、Java 流操作:输入流、过滤流及相关类的深入解析

Java 流操作:输入流、过滤流及相关类的深入解析

在 Java 编程中,流操作是处理数据输入输出的重要部分。下面我们将详细介绍输入流、过滤流以及一些常用的流类。

输入流的关闭

当程序使用完输入流后,应调用其 close() 方法关闭流,这样可以释放与流相关的资源,如文件句柄或端口。一旦输入流关闭,再进行读取操作会抛出 IOException 。不过,某些流在关闭后仍可进行一些操作,例如从 java.security.DigestInputStream 获取消息摘要,通常要在数据读取并关闭流之后进行。

标记和重置

InputStream 类有三个不太常用的方法,可让程序回退并重新读取已读数据:
- public void mark(int readAheadLimit)
- public void reset() throws IOException
- public boolean markSupported()

要重新读取数据,可使用 mark() 方法标记流中的当前位置,之后使用 reset() 方法将流重置到标记位置,后续读取将从标记位置开始。但重置的距离有限,能从标记处读取并仍可重置的字节数由 mark() 方法的 readAheadLimit 参数决定。若尝试重置太远,会

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值