Java BufferedReader (cu exemple)

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

BufferedReaderClasa a java.iopachetului poate fi utilizat împreună cu alți cititori pentru a citi date (în caractere) mai eficient.

Extinde clasa abstractă Reader.

Funcționarea BufferedReader

BufferedReaderMenține un intern tampon de 8192 caractere .

În timpul operației de citire BufferedReader, un fragment de caractere este citit de pe disc și stocat în buffer-ul intern. Și din bufferul intern caracterele sunt citite individual.

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

Creați un BufferedReader

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

 // Creates a FileReader FileReader file = new FileReader(String file); // Creates a BufferedReader BufferedReader buffer = new BufferedReader(file); 

În exemplul de mai sus, am creat un BufferedReadertampon numit cu FileReaderfișierul numit.

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

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

Tamponul va ajuta la citirea mai rapidă a caracterelor din fișiere.

Metode de BufferedReader

BufferedReaderClasa oferă implementări pentru diferite metode prezente în Reader.

read () Metodă

  • read() - citește un singur caracter din buffer-ul intern al cititorului
  • read(char() array) - citește caracterele din cititor și stochează în matricea specificată
  • read(char() array, int start, int length) - citește numărul de caractere egal cu lungimea de la cititor și stochează în matricea specificată începând de la începutul poziției

De exemplu, să presupunem că avem un fișier numit input.txt cu următorul conținut.

 This is a line of text inside the file. 

Să încercăm să citim fișierul folosind BufferedReader.

 import java.io.FileReader; import java.io.BufferedReader; class Main ( public static void main(String() args) ( // Creates an array of character char() array = new char(100); try ( // Creates a FileReader FileReader file = new FileReader("input.txt"); // Creates a BufferedReader BufferedReader input = new BufferedReader(file); // Reads characters input.read(array); System.out.println("Data in the file: "); System.out.println(array); // Closes the reader input.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Ieșire

 Date din fișier: Aceasta este o linie de text din interiorul fișierului. 

În exemplul de mai sus, am creat un cititor tampon numit input. Cititorul tamponat este legat de fișierul input.txt .

 FileReader file = new FileReader("input.txt"); BufferedReader input = new BufferedReader(file); 

Aici, am folosit read()metoda pentru a citi o serie de caractere din buffer-ul intern al cititorului buffered.

skip () Metodă

Pentru a elimina și a omite numărul specificat de caractere, putem folosi skip()metoda. De exemplu,

 import java.io.FileReader; import java.io.BufferedReader; public class Main ( public static void main(String args()) ( // Creates an array of characters char() array = new char(100); try ( // Suppose, the input.txt file contains the following text // This is a line of text inside the file. FileReader file = new FileReader("input.txt"); // Creates a BufferedReader BufferedReader input = new BufferedReader(file); // Skips the 5 characters input.skip(5); // Reads the characters input.read(array); System.out.println("Data after skipping 5 characters:"); System.out.println(array); // closes the reader input.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) ) 

Ieșire

 Date după omiterea a 5 caractere: este o linie de text din interiorul fișierului. 

În exemplul de mai sus, am folosit skip()metoda pentru a sări peste 5 caractere din cititorul de fișiere. Prin urmare, personajele 'T', 'h', 'i', 's'și ' 'sunt omise din fișierul original.

close () Metoda

Pentru a închide cititorul tampon, putem folosi close()metoda. Odată close()apelată metoda, nu putem folosi cititorul pentru a citi datele.

Alte metode ale BufferedReader

Metodă Descriere
ready() verifică dacă cititorul de fișiere este gata de citire
mark() marcați poziția în cititor până la care au fost citite datele
reset() returnează controlul la punctul din cititor unde a fost setată marca

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

Articole interesante...