Heim >Java >javaLernprogramm >Tipps zur Verwendung von Java Streams für die Dateieingabe/-ausgabe
Was ist Java Input/Output?
Java Input/Output (I/O) wird verwendet, um Eingaben zu verarbeiten und Ausgaben in Form von Dateien zu generieren. Java verwendet das Konzept von Streams, das schnelle I/O-Vorgänge ermöglicht.
Mit dem java.io-Paket können alle Ein- und Ausgabevorgänge problemlos durchgeführt werden.
Verarbeiten von Dateien in Java mithilfe der Eingabe/Ausgabe
Streams
Streams können als eine aus Bytes bestehende Datensequenz definiert werden. Es wird Bach genannt, weil es wie ein Wasserstrom ist, der weiter fließt. Es gibt zwei Arten von Streams:
Eingabestream: Wird zum Lesen von Daten aus einer Quelle verwendet. Dies kann eine Datei, ein Array, ein Peripheriegerät oder ein Socket sein.
Ausgabestream: Wird zum Schreiben von Daten an ein Ziel verwendet. Dies kann eine Datei, ein Array, ein Peripheriegerät oder ein Socket sein.
Der Ablauf für einen Eingabestream ist unten dargestellt:
Byte zum Streamen
Java-Byte-Streams werden für die Ein- und Ausgabe von 8-Bit-Bytes verwendet. Es folgt ein Beispiel, das diese beiden Klassen nutzt, um eine Eingabedatei in eine Ausgabedatei zu kopieren −
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class LearnStream { public static void main(String[] args) throws IOException { var directory = "D://sample/stream/"; var fileInput = new FileInputStream(directory+"input.txt"); var fileOutput = new FileOutputStream(directory+"output.txt"); try{ int i; while((i= fileInput.read())!=-1){ fileOutput.write(i); } } catch (IOException e) { throw new RuntimeException(e); } } }
Jetzt erstellen wir eine Datei input.txt mit folgendem Inhalt
Dimas Priyandi Software Developer Java Angular Spring Boot
Programm ausführen und wir erhalten eine Datei mit dem Namen „output.txt“ und folgendem Inhalt
Dimas Priyandi Software Developer Java Angular Spring Boot
Beispiel
Um Dateieingabeströme und Dateiausgabeströme besser zu verstehen, erstellen wir ein neues Beispiel, in dem wir eine Eingabedatei mit dem Namen count.txt haben.
Der Inhalt von count.txt lautet wie folgt:
100 90 80 70 60 50 40 30 20 10 0
Wenn der File Input Stream die numerischen Daten aus der Datei count.txt liest, speichern wir sie in einem Array und führen dann eine Summationsoperation durch, um die Gesamtsumme der Daten zu berechnen. Bitte befolgen Sie den folgenden Programmcode:
import java.io.*; public class LeanCount { public static void main(String[] args) throws FileNotFoundException { var directory = "D://sample/stream/"; var fileInput = new FileInputStream(directory+"count.txt"); var fileOutput = new FileOutputStream(directory+"sum.txt"); Integer sum = 0; try{ var reader = new BufferedReader(new InputStreamReader(fileInput)); var outputWriter = new BufferedWriter(new OutputStreamWriter(fileOutput)); String line; while((line=reader.readLine()) !=null){ sum+=Integer.parseInt(line); } reader.close(); outputWriter.write(sum.toString()); outputWriter.close(); } catch (IOException e) { throw new RuntimeException(e); } } }
Ausgabe:
550
Erklärung:
Zusammenfassung
Die I/O-Streams von Java bieten eine leistungsstarke Möglichkeit, Dateivorgänge abzuwickeln. Durch die Verwendung von InputStream und OutputStream und ihren gepufferten Gegenstücken können Sie effizient aus Dateien lesen und in Dateien schreiben.
Das obige ist der detaillierte Inhalt vonTipps zur Verwendung von Java Streams für die Dateieingabe/-ausgabe. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!