În acest tutorial, vom afla despre Java BufferedWriter și metodele sale cu ajutorul unor exemple.
BufferedWriter
Clasa a java.io
pachetului poate fi utilizat împreună cu alți scriitori pentru a scrie date (în caractere) mai eficient.
Extinde clasa abstractă Writer
.
Funcționarea BufferedWriter
BufferedWriter
Menț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 BufferedWriter
tampon numit cu FileWriter
fișierul numit.
Aici, buffer-ul intern al BufferedWriter
dimensiunii 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
BufferedWriter
Clasa oferă implementări pentru diferite metode prezente în Writer
.
write () Metoda
write()
- scrie un singur caracter în bufferul intern al scriitoruluiwrite(char() array)
- scrie caracterele din matricea specificată către scriitorwrite(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).