Java Outputstream Flush

Java Outputstream Flush
Strumienie informacji są przechowywane w przestrzeni pamięci o nazwie Buffers (znaki). Ilekroć pamięć podręczna jest wypełniona, informacje te mogą być często dostarczane tylko do urządzenia wyjściowego. Aby wysłać zawartość pamięci podręcznej do strumienia wyjściowego, zastosuj funkcję Flush () klasy Outputstream. Używamy funkcji Java.io.Outputstream, który zmusza wszelkie przechowywane bajty wyjściowe do wypchnięcia. Korzystanie z spłukiwania ogólnie oznacza, że ​​wszelkie istniejące wpisane bajty, które buforował mechanizm przepływu wyjściowego, muszą być natychmiast zapisane w wyznaczonej lokalizacji. Wielu z nas może nie zdawać sobie sprawy z użycia funkcji „spłukiwania” w programowaniu Java. Ten artykuł pomoże każdemu użytkownikowi Java zrozumieć użycie funkcji Flush ().

Zaktualizuj system

Przed wdrożeniem przykładu Java musisz upewnić się, że Twój system jest w pełni zaktualizowany i nie ma niekompletnych procesów. Aby to upewnić, musisz uruchomić aplikację terminal Linux. Do tego użyj Ctrl+Alt+T. Po uruchomieniu dodaj wyświetloną instrukcję „Aktualizuj”, która wykorzystuje pakiet „apt” z prawami „sudo” do aktualizacji maszyny Linux. Jeśli Twój komputer nie jest aktualizowany przez dość długi czas, prosi o hasło systemowe. Wyjście wykonania tej instrukcji jest wyświetlane w następującym załączonym obrazie:

Przykład 1:

W ramach naszego pierwszego programu Java pokazujemy użycie funkcji Flush () wraz z strumieniem wejściowym pliku i wyjściowym. Dlatego musimy zrobić plik Java z „.Rozszerzenie Java ”w konsoli za pośrednictwem zapytania„ dotyk ”. Ten plik Java jest pusty i obecnie znajduje się w katalogu domowym naszego Ubuntu 20.04 System zgodnie z zapytaniem „LS”. Otwieramy go za pomocą edytora tekstu za pomocą eksploratora plików.

Dodajemy następujący skrypt Java w tym pustym pliku Java, aby wykonać Flushing za pośrednictwem funkcji Flush (). Możesz zaimportować klasy wejściowe i wyjściowe oddzielnie na początku kodu, ale wolimy po prostu importować pełną Java.pakiet IO za pomocą postaci „*”. Następnie tworzymy nową klasę zdefiniowaną przez użytkownika o nazwie „OutputStreamDemo” w tym skrypcie, który zawiera definicję funkcji main (). W miarę wykonywania programu jego funkcja main () zaczyna działać natychmiast. Instrukcja TRY-ATT () jest używana w metodzie Main (), aby uniknąć nagłego zakończenia naszego programu. Korzystamy z klasy FileOutputStream () z nazwą pliku tekstowego „Płucz.txt ”, aby utworzyć obiekt strumienia wyjściowego„ Out ”, aby zapisać dane w pliku tekstowym za pomocą obiektu klasy OutputStream. Zaraz potem tworzymy obiekt strumienia wejściowego „INP” za pomocą klasy FileInputStream, która wykorzystuje tę samą nazwę pliku w swoich parametrach. Obiekt „INP” jest wykorzystywany do odczytu danych z „spłukiwania.plik txt ”po zapisaniu danych.

Dlatego nazywamy funkcję zapisu () Java z obiektem strumienia wyjściowego „out”, aby napisać znak „a” w „spłucz.plik txt ”. Ten sam obiekt wyjściowy „OUT” wywołuje funkcję flush () w następnym wierszu, aby upewnić się, że dane pisemne są przesuwane tylko do strumienia wejściowego. W 9. wierszu kodu ponownie używamy funkcji Write (.plik txt ”. Wyświetla tylko pierwszy znak na konsoli po wykonaniu tego programu, ponieważ użyliśmy funkcji Flush () przed zapisaniem drugiego znaku do pliku.

Instrukcja funkcji println () z systemu.Pakiet na zewnątrz jest odcięty, aby wyświetlić wynik wywoływania funkcji dostępnej () z obiektem strumienia wejściowego „INP” i wyświetlić całkowitą liczbę dostępnych wartości wejściowych. W następnym wierszu ponownie używamy instrukcji println (), aby odczytać dane wprowadzone z pliku za pomocą funkcji „odczyt” wywołanej obiektem „INP”. Część połowowa jest tutaj, aby złapać błędy z kodu i wyświetlić je na ekranie wyjściowym po wykonaniu tego programu. Zapiszmy nasz kod:

Po uruchomieniu tego pliku Java z zapytaniem „Java” pokazuje, że mamy 2 wartości wejściowe w pliku, podczas gdy wyświetla on tylko „A” ze względu na użycie funkcji Flush (). Plik zawiera 2 znaki.

Przykład 2:

To samo można osiągnąć dla danych tablicy typu bajtów w Javie. Dlatego używamy tego przykładu, aby wdrożyć go w nieco inny sposób. Po zaimportowaniu „Java.Pakiet IO ”i tworzenie klasy demo„ testowej ”tworzymy funkcję main (), która rzuca wyjątek na wypadek, gdyby znalazł jakikolwiek problem. Funkcja Main () zaczyna się od tworzenia strumienia wyjściowego tablicy bajtowej jako „B” przy użyciu klasy BYTEARRAYOUTPUTSTream. Strumień wyjściowy tablicy bajtowej jest przekazywany do klasy bufferedoutputstream, aby utworzyć obiekt „BB” dla buforowanego strumienia wyjściowego.

W ten sposób możemy po prostu utworzyć strumień wyjściowy tablicy bajtowej w czasie wykonywania, aby zapisać dane do strumienia wyjściowego bajtów. Utwórz tablicę bajtów 4 wartości liczb całkowitych i napisz go za pomocą bufferedoutputstream „BB”. Funkcja flush () jest wywoływana przez obiekt „BB”. Pętla „for” używa funkcji tobytearray () do konwersji strumienia bajtów „b” na tablicę. Po konwersji każdej liczby całkowitej na charakter bajtów jest on z powodzeniem wydrukowany z println ().

Po uruchomieniu tego kodu Java otrzymaliśmy przekonwertowaną wartość bajtów -Seek - na naszym ekranie.

Wniosek

Zchodząc od początku tego artykułu do końca, przekonasz się, że jest on załadowany informacjami, których użytkownik Java potrzebuje na temat korzystania z funkcji spłukiwania. Omówiliśmy cel użycia funkcji Flush () we wstępie naszego artykułu i wykonaliśmy dwa łatwe przykłady Java, aby poprzeć nasze wyjaśnienie. Pierwszy przykład zawiera użycie klasy FileOutputStream i FileInputStream wraz z funkcją Flush (), aby wyświetlać tylko dane dodane przed użyciem Flush. Podczas gdy drugi przykład pokazuje, że możesz go użyć, aby nic nie robić.