Heim >Java >javaLernprogramm >Kenntnisse im Umgang mit Java-Spracheingabe- und -ausgabeströmen

Kenntnisse im Umgang mit Java-Spracheingabe- und -ausgabeströmen

WBOY
WBOYOriginal
2023-06-10 14:42:251419Durchsuche

Kenntnisse zum Betrieb von Eingabe- und Ausgabestreams in der Java-Sprache

Die Java-Sprache bietet Entwicklern viele praktische Eingabe- und Ausgabestream-Klassen, wodurch das Lesen und Schreiben von Dateien sehr einfach und effizient ist. In diesem Artikel stellen wir die Grundkenntnisse der Eingabe- und Ausgabeströme der Java-Sprache sowie einige gängige Betriebstechniken vor.

Java-Eingabe- und Ausgabeströme: Übersicht

Java-Eingabe- und Ausgabeströme sind ein Mechanismus, der einige vordefinierte Klassen zum Lesen und Schreiben von Datenströmen oder Datenblöcken verwendet. Dabei handelt es sich um Klassen im Java.io-Paket, die verschiedene Datentypen wie Text, Binärdaten, Bilder usw. lesen und schreiben können. Der Java-Eingabestream wird zum Lesen des Eingabestreams und der Java-Ausgabestream zum Schreiben des Ausgabestreams verwendet. Darüber hinaus können Java-Eingabe- und Ausgabeströme auch zum Lesen und Schreiben von Netzwerk-Sockets, Dateien und anderen Eingabe- und Ausgabegeräten verwendet werden.

Klassifizierung von Java-Eingabe- und Ausgabeströmen

Java-Eingabe- und Ausgabeströme können in vier Haupttypen unterteilt werden:

  1. Byte-Stream: Verwenden Sie Binärform zum Lesen und Schreiben von Daten. Es ist eine Unterklasse der abstrakten Klassen InputStream und OutputStream. BufferedInputStream und BufferedOutputStream können die Lese- und Schreibeffizienz verbessern.
  2. Character Stream: Verwenden Sie die Zeichenform zum Lesen und Schreiben von Daten. Es handelt sich um eine Unterklasse der abstrakten Klassen Reader und Writer. BufferedReader und BufferedWriter können die Lese- und Schreibeffizienz verbessern.
  3. Objektstrom: Wird zum Lesen und Schreiben von Java-Objekten verwendet. Es ist eine Unterklasse von ObjectInputStream und ObjectOutputStream.
  4. Compression Stream: Wird zum Lesen und Schreiben komprimierter und dekomprimierter Daten verwendet. Es ist eine Unterklasse von GZIPInputStream, GZIPOutputStream, InflaterInputStream und DeflaterOutputStream.

Java-Eingabe- und Ausgabestream-Betriebsfähigkeiten

Hier sind einige häufig verwendete Java-Eingabe- und Ausgabestream-Betriebsfähigkeiten:

  1. Die Verwendung der Klassen BufferedInputStream und BufferedOutputStream kann die Lese- und Schreibeffizienz verbessern. Sie können Daten im Speicher zwischenspeichern und nur dann auf die Festplatte schreiben, wenn der Cache voll ist oder bestimmte Bedingungen erfüllt sind.
  2. Verwenden Sie bei großen Dateien die Klasse RandomAccessFile, um Daten an jedem Ort schnell zu lesen und zu schreiben.
  3. Für Textdateien können Sie zum Lesen und Schreiben die Klasse FileReader oder FileWriter verwenden. Beim Lesen und Schreiben müssen Sie die Zeichenkodierung angeben. Sie können den Code verwenden:
FileReader fr = new FileReader("file.txt");
BufferedReader br = new BufferedReader(fr);
String line;
while ((line = br.readLine()) != null) {
    System.out.println(line);
}
br.close();
fr.close();
  1. Für Binärdateien können Sie die Klassen DataInputStream und DataOutputStream zum Lesen und Schreiben verwenden. Beachten Sie, dass Sie beim Schreiben den zu schreibenden Datentyp und die Bytegröße angeben müssen. Sie können den Code verwenden:
DataOutputStream out = new DataOutputStream(
    new BufferedOutputStream(
        new FileOutputStream("binary.dat")));
out.writeInt(123);
out.writeDouble(3.14159);
out.writeChar('A');
out.close();

DataInputStream in = new DataInputStream(
    new BufferedInputStream(
        new FileInputStream("binary.dat")));
System.out.println(in.readInt());
System.out.println(in.readDouble());
System.out.println(in.readChar());
in.close();
  1. Wenn Sie eine Binärdatei in einer Schleife lesen, können Sie die EOFException-Ausnahme verwenden, um festzustellen, ob die Datei vorhanden ist lesen. Wenn eine Ausnahme gelesen wird, bedeutet dies, dass der Lesevorgang abgeschlossen ist.
DataInputStream in = new DataInputStream(
    new BufferedInputStream(
        new FileInputStream("binary.dat")));
try {
    while (true) {
        int i = in.readInt();
        double d = in.readDouble();
        char c = in.readChar();
        System.out.println(i + " " + d + " " + c);
    }
} catch (EOFException e) {
    System.out.println("文件读取完毕");
}
in.close();

Fazit

Java-Eingabe- und Ausgabeströme sind ein sehr wichtiger Teil der Java-Programmierung. In diesem Artikel werden die Grundkenntnisse und allgemeinen Betriebstechniken von Java-Eingabe- und Ausgabeströmen vorgestellt. Durch eingehende Untersuchung und Verwendung von Java-Eingabe- und Ausgabeströmen können die Lese- und Schreibeffizienz und die Leistung von Java-Programmen erheblich verbessert werden.

Das obige ist der detaillierte Inhalt vonKenntnisse im Umgang mit Java-Spracheingabe- und -ausgabeströmen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn