Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Java

Java FileInputStream meistern: Praktischer Leitfaden mit Code-Beispielen

Java FileInputStream Klasse

Dieses Tutorial führt Sie durch Javas FileInputStream, deckt Kernmethoden, praktische Nutzung und reale Beispiele ab.

Die FileInputStream Klasse, Teil des java.io Pakets, ermöglicht das Lesen von rohen Byte-Daten aus Dateien. Sie erweitert die abstrakte InputStream Klasse und bietet eine konkrete Implementierung für Datei-I/O.

Java FileInputStream meistern: Praktischer Leitfaden mit Code-Beispielen

Bevor Sie in FileInputStream eintauchen, stellen Sie sicher, dass Sie mit den Grundlagen des Java Datei-Handlings vertraut sind.

FileInputStream erstellen

Importieren Sie die Klasse und instanziieren Sie sie entweder mit einem Dateipfad oder einem File Objekt.

1. Mit Dateipfad

FileInputStream input = new FileInputStream("pfad/zur/datei.txt");

Dies öffnet einen Stream, der an die Datei am angegebenen Pfad gebunden ist.

2. Mit File Objekt

File file = new File("datei.txt");
FileInputStream input = new FileInputStream(file);

Wichtige Methoden von FileInputStream

Die Klasse implementiert alle abstrakten Methoden von InputStream und fügt einige eigene hinzu. Hier sind die am häufigsten verwendeten.

read()

Beispiel: Textdatei Byte-für-Byte lesen.

import java.io.FileInputStream;

public class Main {
    public static void main(String[] args) {
        try (FileInputStream input = new FileInputStream("input.txt")) {
            System.out.println("Daten in der Datei:");
            int byteRead;
            while ((byteRead = input.read()) != -1) {
                System.out.print((char) byteRead);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Ausgabe

Daten in der Datei: This is a line of text inside the file.

available()

Gibt die Anzahl der Bytes zurück, die ohne Blockieren gelesen werden können.

try (FileInputStream input = new FileInputStream("input.txt")) {
    System.out.println("Verfügbar am Anfang: " + input.available());
    input.read();
    input.read();
    input.read();
    System.out.println("Verfügbar nach 3 reads: " + input.available());
}

Ausgabe

Verfügbar am Anfang: 39
Verfügbar nach 3 reads: 36

skip()

Verschiebt die Stream-Position um eine angegebene Anzahl Bytes und verwirft diese.

try (FileInputStream input = new FileInputStream("input.txt")) {
    input.skip(5); // überspringt "This "
    int byteRead;
    while ((byteRead = input.read()) != -1) {
        System.out.print((char) byteRead);
    }
}

Ausgabe

is a line of text inside the file.

close()

Schließt den Stream und gibt Systemressourcen frei. Die Verwendung eines try-with-resources Blocks (wie oben gezeigt) stellt sicher, dass close() automatisch aufgerufen wird.

Weitere FileInputStream Methoden

MethodeBeschreibung
finalize()Stellt sicher, dass close() vor Garbage Collection aufgerufen wird.
getChannel()Gibt den FileChannel zurück, der mit dem Stream verknüpft ist.
getFD()Stellt den zugrundeliegenden File Descriptor bereit.
mark(int readlimit)Markiert die aktuelle Position für späteren Reset.
reset()Setzt den Stream auf die letzte markierte Position zurück.

Für tiefere Einblicke konsultieren Sie die offizielle Java-Dokumentation: Java FileInputStream (offizielle Java-Dokumentation).

Java

  1. Javas final-Schlüsselwort verstehen: Variablen, Methoden und Klassen
  2. Java instanceof-Operator: Ein umfassender Leitfaden
  3. Java statische verschachtelte Klassen verstehen: Nutzung, Unterschiede und Beispiele
  4. Java anonyme innere Klassen meistern: Definition, Syntax und praktische Beispiele
  5. Java Singleton-Pattern erklärt: Sichere Implementierung und Verwendung
  6. Java Reflection meistern: Klassen, Methoden und Felder zur Laufzeit inspizieren
  7. Java ObjectOutputStream meistern: Serialisierung, Methoden und praktische Beispiele
  8. Java BufferedReader meistern: Effizientes Character-Stream-Handling
  9. Java Scanner meistern: Umfassender Leitfaden mit praktischen Beispielen
  10. Java Generics meistern – Wiederverwendbaren, typsicheren Code erstellen