InputStream
是 Java 中的一个抽象类,它是所有字节输入流类的超类。它主要用于从数据源(如文件、网络连接等)读取数据。在 Java 中,InputStream
的基本用法包括以下几个步骤:
InputStream
子类对象,例如 FileInputStream
、BufferedInputStream
或 ObjectInputStream
等。这些子类提供了不同的数据源读取功能。InputStream
对象的 read()
方法从数据源读取数据。read()
方法的返回值是读取到的字节,如果已经到达流的末尾,则返回 -1。通常,我们会使用循环来持续读取数据,直到读取完所有数据。close()
方法关闭 InputStream
对象,以释放与其关联的系统资源。下面是一个简单的示例,演示如何使用 FileInputStream
从文件中读取数据:
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
public class InputStreamExample {
public static void main(String[] args) {
File file = new File("example.txt");
try (InputStream inputStream = new FileInputStream(file)) {
int data;
while ((data = inputStream.read()) != -1) {
System.out.print((char) data);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在这个示例中,我们首先创建了一个 File
对象,表示要读取的文件。然后,我们使用 try-with-resources
语句创建了一个 FileInputStream
对象,并将其赋值给 InputStream
类型的变量。在循环中,我们使用 read()
方法从文件中读取数据,并将其转换为字符打印到控制台。最后,当循环结束时,try-with-resources
语句会自动关闭 InputStream
。