Java BufferedReader (z primeri)

V tej vadnici bomo s pomočjo primerov spoznali Javo BufferedReader in njene metode.

BufferedReaderRazred java.iopaket se lahko uporablja skupaj z drugimi bralci bolj učinkovito branje podatkov (v znakih).

Razširja abstraktni razred Reader.

Delovanje BufferedReaderja

BufferedReaderOhranja notranji medpomnilnik 8192 znakov .

Med operacijo branja v BufferedReader, se z diska prebere del znakov in shrani v notranji vmesnik In iz notranjega medpomnilnika se znaki berejo posamezno.

Zato se zmanjša število komunikacij na disk. Zato je branje znakov hitrejše BufferedReader.

Ustvarite BufferedReader

Če želite ustvariti a BufferedReader, moramo najprej uvoziti java.io.BuferedReaderpaket. Ko uvozimo paket, tukaj je opisano, kako lahko ustvarimo bralnik.

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

V zgornjem primeru smo BufferedReaderz FileReaderimenovano datoteko ustvarili imenovani vmesni pomnilnik .

Tu ima notranji vmesni pomnilnik BufferedReaderprivzeto velikost 8192 znakov. Lahko pa določimo tudi velikost notranjega vmesnega pomnilnika.

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

Medpomnilnik vam bo pomagal hitreje prebrati znake iz datotek.

Metode BufferedReader

BufferedReaderRazred določa izvedb za različne metode, ki so prisotne v Reader.

metoda read ()

  • read() - prebere en sam znak iz notranjega vmesnega pomnilnika bralnika
  • read(char() array) - prebere znake iz bralnika in jih shrani v določeno polje
  • read(char() array, int start, int length) - iz bralnika prebere število znakov, enako dolžini, in shrani v določeno matriko, začenši od začetka položaja

Denimo, da imamo datoteko z imenom input.txt z naslednjo vsebino.

 This is a line of text inside the file. 

Poskusimo datoteko prebrati z 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(); ) ) ) 

Izhod

 Podatki v datoteki: To je vrstica besedila znotraj datoteke. 

V zgornjem primeru smo ustvarili medpomnilnik z imenom input. Medpomnilnik je povezan z datoteko input.txt .

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

Tu smo read()metodo uporabili za branje vrste znakov iz notranjega vmesnega pomnilnika medpomnilnika.

preskoči () Metoda

Če želimo zavreči in preskočiti določeno število znakov, lahko uporabimo skip()metodo. Na primer

 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(); ) ) ) 

Izhod

 Podatki po preskoku 5 znakov: je vrstica besedila znotraj datoteke. 

V zgornjem primeru smo skip()metodo uporabili za preskok 5 znakov iz bralnika datotek. Zato, znaki 'T', 'h', 'i', 's'in ' 'se preskočijo iz prvotne datoteke.

metoda close ()

Za zapiranje medpomnilnika lahko uporabimo close()metodo. Ko je close()metoda enkrat poklicana, ne moremo uporabljati bralnika za branje podatkov.

Druge metode BufferedReader

Metoda Opis
ready() preveri, ali je bralnik datotek pripravljen za branje
mark() označite položaj v bralniku, do katerega so bili prebrani podatki
reset() vrne kontrolnik do točke v čitalniku, kjer je bila nastavljena oznaka

Če želite izvedeti več, obiščite Java BufferedReader (uradna dokumentacija Java).

Zanimive Članki...