InputStream使用方法(inputstream工作原理介绍)
Java中的I/O操作,使用流(stream)的概念来介绍。分为输入流 InputStream 和 Reader,输出流OutputStream 和 Writer 作为基类。
Java 中流的类型分为字符型和字节型。
字节流分别是: InputStream 和 OutputStream 类。
字符流分别是:Reader 和 Writer 类。
这些类都是抽象类,具体的实现方法而不是这四个抽象类,而是对应的实现子类。接下来具体的看看这些功能的的使用。这篇主要先来看看输入流的 InputStream 。
InputStream
InputStream 是字节输入流的所有类的超类。 如果想要使用必须继承该类实现对应的抽象方法始终提供返回输入的下一个字节的方法。
抽象类的定义:
public abstract class InputStream implements Closeable
这里实现了 Closeable 并继承了 AutoCloseable 接口。 就可以使用 try-with-resource 语句进行关闭资源。
因为该类并不是一个具体的执行类,而是一个抽象类,它有自己的子类用来具体的执行流的操作。
对应的子类有:
先看该抽象类有哪些方法。
从方法可以看到,read() 方法是比较重要的方法。对于文件系统的读取, 最常用的实现是 FileInputStream。
FileInputStream
对于 FileInputStream 类是从文件系统中的文件中获取输入字节,对于能否获取主要取决于主机的环境或权限。
FileInputStream 用于读取原始的字节流,比方说:图像数据,如果想读取字符流,推荐使用 FileReader 类。
需要注意的是,所有的流操作,都需要手动的调用 close() 方法, 关闭输入流,并释放与之对应的资源。当然也可以使用 try-with-resource 语法调用。
该类的定义:
public class FileInputStream extends InputStream
构造函数定义如下:
简单的案例, 读取一个文件到 System.out 输出
对于 read 方法,会读取输入流到下一个字节,并返回字节表示的一个 int 值。int 值的取值范围是:0 到 255。
本文地址:网络百科频道 https://www.eeeoo.cn/wangluo/903043.html,嗨游网一个专业手游免费下载攻略知识分享平台,本站部分内容来自网络分享,不对内容负责,如有涉及到您的权益,请联系我们删除,谢谢!