Java BufferedReader (s primjerima)

U ovom uputstvu uz primjere ćemo naučiti o Javi BufferedReader i njegovim metodama.

BufferedReaderRazred java.iopaket se može koristiti s ostalim čitateljima čitati podatke (u znakovima) učinkovitije.

Proširuje apstraktnu klasu Reader.

Rad BufferedReader-a

BufferedReaderOdržava unutarnju tampon od 8192 znakova .

Tijekom operacije čitanja BufferedReader, dio znakova se čita s diska i pohranjuje u unutarnji međuspremnik. A iz internog međuspremnika znakovi se čitaju pojedinačno.

Stoga se smanjuje broj komunikacije s diskom. Zbog toga se čitanje znakova brže koristi BufferedReader.

Stvorite BufferedReader

Da bismo stvorili BufferedReader, prvo moramo uvesti java.io.BuferedReaderpaket. Nakon što uvozimo paket, evo kako možemo stvoriti čitač.

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

U gornjem primjeru stvorili smo BufferedReaderimenovani međuspremnik s FileReaderimenovanom datotekom.

Ovdje unutarnji međuspremnik BufferedReaderima zadanu veličinu od 8192 znaka. Međutim, možemo odrediti i veličinu unutarnjeg međuspremnika.

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

Me uspremnik pomoći će bržem čitanju znakova iz datoteka.

Metode BufferedReader-a

BufferedReaderKlasa pruža implementacije za različite metode prisutne u Reader.

read () metoda

  • read() - čita jedan znak iz unutarnjeg međuspremnika čitača
  • read(char() array) - čita znakove iz čitača i pohranjuje u navedeni niz
  • read(char() array, int start, int length) - očitava iz čitača broj znakova jednak duljini i pohranjuje u navedeni niz počevši od početka položaja

Na primjer, pretpostavimo da imamo datoteku koja se zove input.txt sa sljedećim sadržajem.

 This is a line of text inside the file. 

Pokušajmo datoteku pročitati pomoću 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(); ) ) ) 

Izlaz

 Podaci u datoteci: Ovo je redak teksta unutar datoteke. 

U gornjem primjeru stvorili smo međuspremnik s imenom input. Me uspremnik je povezan s datotekom input.txt .

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

Ovdje smo read()metodu koristili za čitanje niza znakova iz unutarnjeg međuspremnika međuspremnika.

preskoči () Metoda

Da bismo odbacili i preskočili navedeni broj znakova, možemo se poslužiti skip()metodom. Na primjer,

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

Izlaz

 Podaci nakon preskakanja 5 znakova: redak je teksta unutar datoteke. 

U gornjem primjeru koristili smo skip()metodu za preskakanje 5 znakova iz čitača datoteka. Dakle, likovi 'T', 'h', 'i', 's'i ' 'preskaču iz izvorne datoteke.

close () Metoda

Da bismo zatvorili međuspremnik, možemo koristiti close()metodu. Jednom kada se close()metoda pozove, ne možemo koristiti čitač za čitanje podataka.

Ostale metode BufferedReader-a

Metoda Opis
ready() provjerava je li čitač datoteka spreman za čitanje
mark() označite položaj u čitaču do kojeg su podaci pročitani
reset() vraća kontrolu na točku u čitaču gdje je postavljena oznaka

Da biste saznali više, posjetite Java BufferedReader (službena Java dokumentacija).

Zanimljivi članci...