Java BufferedWriter (cu exemple)

În acest tutorial, vom afla despre Java BufferedWriter și metodele sale cu ajutorul unor exemple.

BufferedWriterClasa a java.iopachetului poate fi utilizat împreună cu alți scriitori pentru a scrie date (în caractere) mai eficient.

Extinde clasa abstractă Writer.

Funcționarea BufferedWriter

BufferedWriterMenține un intern tampon de 8192 caractere .

În timpul operației de scriere, caracterele sunt scrise în memoria tampon internă în locul discului. Odată ce bufferul este umplut sau scriitorul este închis, toate caracterele din buffer sunt scrise pe disc.

Prin urmare, numărul de comunicații pe disc este redus. Acesta este motivul pentru care scrierea caracterelor este mai rapidă folosind BufferedWriter.

Creați un BufferedWriter

Pentru a crea un BufferedWriter, trebuie să importăm mai java.io.BufferedWriterîntâi pachetul. Odată ce am importat pachetul, iată cum putem crea scriitorul tamponat.

 // Creates a FileWriter FileWriter file = new FileWriter(String name); // Creates a BufferedWriter BufferedWriter buffer = new BufferedWriter(file); 

În exemplul de mai sus, am creat un BufferedWritertampon numit cu FileWriterfișierul numit.

Aici, buffer-ul intern al BufferedWriterdimensiunii implicite este de 8192 de caractere. Cu toate acestea, putem specifica și dimensiunea bufferului intern.

 // Creates a BufferedWriter with specified size internal buffer BufferedWriter buffer = new BufferedWriter(file, int size); 

Tamponul va ajuta să scrieți caractere în fișiere mai eficient.

Metode de BufferedWriter

BufferedWriterClasa oferă implementări pentru diferite metode prezente în Writer.

write () Metoda

  • write() - scrie un singur caracter în bufferul intern al scriitorului
  • write(char() array) - scrie caracterele din matricea specificată către scriitor
  • write(String data) - scrie șirul specificat scriitorului

Exemplu: BufferedWriter pentru a scrie date într-un fișier

 import java.io.FileWriter; import java.io.BufferedWriter; public class Main ( public static void main(String args()) ( String data = "This is the data in the output file"; try ( // Creates a FileWriter FileWriter file = new FileWriter("output.txt"); // Creates a BufferedWriter BufferedWriter output = new BufferedWriter(file); // Writes the string to the file output.write(data); // Closes the writer output.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) ) 

În exemplul de mai sus, am creat un scriitor tampon numit output împreună cu FileWriter. Scriitorul tamponat este legat de fișierul output.txt .

 FileWriter file = new FileWriter("output.txt"); BufferedWriter output = new BufferedWriter(file); 

Pentru a scrie date în fișier, am folosit write()metoda.

Aici, când rulăm programul, fișierul output.txt este umplut cu următorul conținut.

 This is a line of text inside the file. 

flush () Metoda

Pentru a goli tamponul intern, putem folosi flush()metoda. Această metodă obligă scriitorul să scrie toate datele prezente în buffer în fișierul destinație.

De exemplu, să presupunem că avem un fișier gol numit output.txt .

 import java.io.FileWriter; import java.io.BufferedWriter; public class Main ( public static void main(String() args) ( String data = "This is a demo of the flush method"; try ( // Creates a FileWriter FileWriter file = new FileWriter(" flush.txt"); // Creates a BufferedWriter BufferedWriter output = new BufferedWriter(file); // Writes data to the file output.write(data); // Flushes data to the destination output.flush(); System.out.println("Data is flushed to the file."); output.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Ieșire

 Datele sunt transferate în fișier. 

Când rulăm programul, fișierul output.txt este umplut cu textul reprezentat de datele șirului.

close () Metoda

Pentru a închide scriitorul tampon, putem folosi close()metoda. Odată ce close()metoda este apelată, nu putem folosi scriitorul pentru a scrie datele.

Alte metode ale BufferedWriter

Metodă Descriere
newLine() introduce o nouă linie scriitorului
append() inserează caracterul specificat scriitorului curent

Pentru a afla mai multe, vizitați Java BufferedWriter (documentație oficială Java).

Articole interesante...