English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Tutorial werden wir durch einen Beispiel lernen, wie man die Java InputStream-Klasse und ihre Methoden verwendet.
Die InputStream-Klasse aus dem java.io-Paket ist eine abstrakte Oberklasse, die einen Byte-Eingabestrom darstellt.
Da InputStream eine abstrakte Klasse ist, hat er selbst keine Verwendung. Allerdings können seine Unterklassen zum Lesen von Daten verwendet werden.
Um die Funktionen von InputStream zu verwenden, können wir seine Unterklassen verwenden. Diese Unterklassen sind:
在下一个教程中,我们将学习所有这些子类。
为了创建InputStream,我们必须首先导入java.io.InputStream包。导入包后,就可以创建输入流。
// 创建一个InputStream InputStream object1 = new FileInputStream();
在这里,我们使用FileInputStream创建了一个输入流。这是因为InputStream是一个抽象类。因此,我们不能创建InputStream的对象。
注意:我们还可以从InputStream的其他子类创建输入流。
InputStream类提供了由其子类实现的不同方法。以下是一些常用的方法
read(); - 从输入流中读取一个字节的数据
read(byte[] array); - 从流中读取字节并存储在指定的数组中
available(); - 返回输入流中可用的字节数
mark(); - 标记输入流中数据所在的位置
reset(); -将控制点返回到流中设置标记的点
markSupported();- 检查流中是否支持mark()和reset()方法
skips(); - 跳过和丢弃输入流中的指定字节数
close(); - Eingabestrom schließen
下面是使用FileInputStream类实现InputStream的方法。
假设我们有一个名为input.txt的文件,其中包含以下内容。
Dies ist eine Zeile Text in der Datei.
让我们尝试使用FileInputStream (InputStream的子类)来读取这个文件。
import java.io.FileInputStream; import java.io.InputStream; public class Main { public static void main(String args[]) { byte[] array = new byte[100]; try { InputStream input = new FileInputStream("input.txt"); System.out.println("文件中的可用字节: "); + input.available()); //从输入流中读取字节 input.read(array); System.out.println("从文件读取的数据: "); //Array von Bytes in Zeichenfolge umwandeln String data = new String(array); System.out.println(data); //Eingabestrom schließen input.close(); } catch (Exception e) { e.getStackTrace(); } } }
Ausgaberesultat
Verfügbare Bytes in der Datei: 35 Gelesene Daten aus der Datei: Dies ist eine Zeile Text in der Datei.
Im obigen Beispiel haben wir mit der Klasse FileInputStream einen Eingabestrom erstellt. Der Eingabestrom ist mit einer Datei verbunden.input.txtVerknüpfung.
InputStream input = new FileInputStream("input.txt");
Um voninput.txtDaten aus einer Datei lesen, wir haben diese beiden Methoden implementiert.
input.read(array); //Daten aus dem Eingabestrom lesen input.close(); //Eingabestrom schließen