Java Output Stream Flush

Java Output Stream Flush
Informationsströme werden in einem Speicherraum namens Puffer (Zeichen) gespeichert. Wenn der Cache gefüllt ist, können diese Informationen häufig nur an ein Ausgabegerät geliefert werden. Um den Inhalt des Cache an den Ausgangsstrom zu senden, verwenden. Wir verwenden die Flush () -Funktion der Java.io.Ausgangsstream, der alle gespeicherten Ausgangs Bytes zum Herausgegeben erzwingen. Die Verwendung des Flush bedeutet im Allgemeinen, dass vorhandene eingeschriebene Bytes, dass der Ausgangsflussmechanismus zwischengespeichert ist. Viele von uns sind sich der Verwendung der „Flush“ -Funktion in der Java -Programmierung möglicherweise nicht bewusst. Dieser Artikel würde jedem Java -Benutzer helfen, die Verwendung einer Flush () -Funktion zu verstehen.

Aktualisieren Sie das System

Vor der Implementierung eines Java -Beispiels müssen Sie sicherstellen, dass Ihr System vollständig aktualisiert ist und keine unvollständigen Prozesse verfügt. Um dies sicherzustellen, müssen Sie die Linux -Terminalanwendung starten. Verwenden Sie dazu das Strg+Alt+T, um dies zu tun. Fügen Sie nach dem Start die angezeigte "Update" -Bericht hinzu, die das "APT" -Paket mit den Rechten der "sudo" verwendet, um den Linux -Computer zu aktualisieren. Wenn Ihr Computer noch lange nicht aktualisiert wird, wird nach einem Systemkennwort aufgefragt. Die Ausgabe für die Ausführung dieser Anweisung wird im folgenden angehängten Bild angezeigt:

Beispiel 1:

In unserem ersten Java -Beispielprogramm demonstrieren wir die Verwendung der FLUSH () -Funktion zusammen mit dem Dateieingangs- und Ausgabestream. So müssen wir eine Java -Datei mit der “erstellen“.Java ”Erweiterung in der Konsole über die Abfrage„ Touch “. Diese Java -Datei ist leer und befindet sich derzeit im Heimverzeichnis unseres Ubuntu 20.04 System gemäß der LS -Abfrage. Wir öffnen es mit einem Texteditor mit dem Datei Explorer.

Wir fügen das folgende Java -Skript in diese leere Java -Datei hinzu, um Flushing über die Funktion von Flush () durchzuführen. Sie können die Eingangs- und Ausgabefilestream -Klassen zu Beginn des Code separat importieren, aber wir bevorzugen es, die volle Java einfach zu importieren.IO -Paket mit dem Zeichen "*". Danach erstellen wir eine neue benutzerdefinierte Klasse mit dem Namen "OutputStreamDemo" in diesem Skript, das eine Main () -Funktionsdefinition enthält, darin. Wenn das Programm ausgeführt wird. Die Aussage für Try-catch () wird innerhalb der Main () -Methode verwendet, um die plötzliche Beendigung unseres Programms zu vermeiden. Wir verwenden die DateioutputStream () -Klasse mit einem Textdateiname „Flush.txt ”, um ein Ausgabestream -Objekt„ Aus “zu erstellen, um die Daten mit dem OutputStream -Klasse -Objekt in eine Textdatei zu schreiben. Danach erstellen wir ein Eingabestream -Objekt „INP“ mit der DateiInputStream -Klasse, die denselben Dateinamen in seinen Parametern verwendet. Das "INP" -Objekt wird verwendet, um die Daten aus einem "Flush" zu lesen.TXT ”Datei nach dem Schreiben der Daten.

Daher nennen wir die Write () -Funktion von Java mit dem Ausgabestream -Objekt "Out", um ein Zeichen "A" in einen "Flush" zu schreiben.txt ”Datei. Das gleiche OutputStream -Objekt „Aus“ ruft die Funktion von Flush () in der nächsten Zeile auf, um sicherzustellen. In der 9. Codezeile verwenden wir die Funktion write () erneut mit der Verwendung des Ausgabestream -Objekts "Out", um das Zeichen "B" in den "Flush" zu schreiben.txt ”Datei. Nach der Ausführung dieses Programms werden nur das erste Zeichen der Konsole auf der Konsole angezeigt, da wir die Funktion von Flush () verwendet haben.

Die function -Anweisung println () aus dem System.OUT -Paket wird abgeschnitten, um das Ergebnis des Aufrufens der Funktion verfügbarer () mit dem Eingabestream -Objekt „INP“ anzuzeigen und die Gesamtzahl der verfügbaren Eingabewerte anzuzeigen. In der nächsten Zeile verwenden wir die Anweisung println () erneut, um die eingegebenen Daten aus einer Datei über die Funktion „Lese“ zu lesen, die mit dem "INP" -Fjekt aufgerufen wird. Der Fangteil ist hier, um die Fehler aus dem Code zu erfassen und nach der Ausführung dieses Programms auf dem Ausgangsbildschirm anzuzeigen. Sparen wir unseren Code:

Nach Ausführung dieser Java -Datei mit der Abfrage „Java“ zeigt sie, dass wir 2 Eingabestalte in der Datei haben, während sie nur aufgrund der Verwendung der Funktion von Flush () „A“ angezeigt wird. Die Datei enthält 2 Zeichen.

Beispiel 2:

Das Gleiche kann für die Byte -Array -Daten in Java erreicht werden. Daher verwenden wir dieses Beispiel, um es auf etwas anderes zu implementieren. Nach dem Import der „Java.IO ”-Paket und Erstellen einer Demo -Klasse„ Test “erstellen eine Main () -Funktion, die eine Ausnahme ausführt, falls es ein Problem findet. Die Funktion main () beginnt mit der Erstellung eines Byte -Array -Ausgangsstroms als „B“ unter Verwendung der BytearrayoutputStream -Klasse als „B“. Der Byte -Array -Ausgangsstrom wird an die BufferedOutputStream -Klasse übergeben, um ein Objekt „BB“ für den gepufferten Ausgangsstrom zu erstellen.

Auf diese Weise können wir einfach einen Byte -Array -Ausgangsstrom zur Laufzeit erstellen, um die Daten in einen Byte -Ausgangsstrom zu schreiben. Erstellen Sie ein Byte -Array von 4 ganzzahligen Werten und schreiben Sie es mit dem BufferedOutputStream "BB". Die Funktion von Flush () wird über das BB -Objekt aufgerufen. Die "für" -Schloop verwendet die Funktion tobytearray (), um den Byte -Stream "B" in ein Array umzuwandeln. Bei der Umwandlung der einzelnen Ganzzahl in Byte -Charakter wird es erfolgreich mit println () ausgedruckt.

Nachdem wir diesen Java -Code ausgeführt haben.

Abschluss

Wenn Sie von Beginn dieses Artikels bis zum Ende heruntergekommen sind, werden Sie feststellen, dass ein Java -Benutzer mit den Informationen geladen wird. Wir haben den Zweck der Verwendung der Funktion von Flush () in der Einführung unseres Artikels behandelt und zwei einfache Java -Beispiele durchgeführt, um unsere Erklärung zu unterstützen. Das erste Beispiel enthält die Verwendung von FileOutputStream- und FileInputStream -Klasse zusammen mit der Funktion von Flush (), um die Daten nur vor der Verwendung von Flush hinzugefügt anzuzeigen. Während das zweite Beispiel zeigt, dass Sie es verwenden können, um auch nichts zu tun.