Ebben az oktatóanyagban példák segítségével megismerhetjük a Java BufferedReader programot és annak módszereit.
A csomag BufferedReaderosztálya java.iomás olvasókkal is használható az adatok (karakterben) hatékonyabb olvasására.
Kiterjeszti az absztrakt osztályt Reader.

A BufferedReader működése
Az BufferedReaderállítja egy belső puffer 8192 karakter .
A beolvasási művelet során BufferedReaderegy darab karakter olvasható ki a lemezről és tárolódik a belső pufferben. És a belső pufferből a karakterek külön-külön olvashatók.
Ezért csökken a lemezre irányuló kommunikáció száma. Ezért gyorsabb a karakterek olvasása BufferedReader.
Hozzon létre egy BufferedReader-t
A létrehozásához először BufferedReaderimportálnunk kell a java.io.BuferedReadercsomagot. A csomag importálása után a következőképpen hozhatjuk létre az olvasót.
 // Creates a FileReader FileReader file = new FileReader(String file); // Creates a BufferedReader BufferedReader buffer = new BufferedReader(file); 
A fenti példában létrehoztunk egy BufferedReadermegnevezett puffert a FileReadermegnevezett fájllal.
Itt a belső puffer BufferedReaderalapértelmezett mérete 8192 karakter. Megadhatjuk azonban a belső puffer méretét is.
 // Creates a BufferdReader with specified size internal buffer BufferedReader buffer = new BufferedReader(file, int size); 
A puffer segít gyorsabban olvasni a karaktereket a fájlokból.
A BufferedReader módszerei
Az BufferedReaderosztály megvalósításokat biztosít a (z) Reader.
read () módszer
read()- egyetlen karaktert olvas le az olvasó belső pufferébőlread(char() array)- beolvassa a karaktereket az olvasóból és eltárolja a megadott tömbbenread(char() array, int start, int length)- beolvassa az olvasóból a hosszúsággal megegyező karakterek számát, és a pozíciótól kezdve a megadott tömbben tárolja
Tegyük fel például, hogy van egy input.txt nevű fájl a következő tartalommal.
 This is a line of text inside the file. 
Próbáljuk meg elolvasni a fájlt a 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(); ) ) ) 
Kimenet
Adatok a fájlban: Ez egy szövegsor a fájl belsejében.
A fenti példában létrehoztunk egy pufferolt olvasót, amelynek neve bemenet. A pufferelt olvasó az input.txt fájlhoz van kapcsolva .
 FileReader file = new FileReader("input.txt"); BufferedReader input = new BufferedReader(file); 
Itt azt a read()módszert használtuk, hogy egy karaktertömböt olvassunk a pufferolt olvasó belső pufferéből.
skip () módszer
A megadott számú karakter elvetéséhez és kihagyásához használhatjuk a skip()módszert. Például,
 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(); ) ) ) 
Kimenet
Adatok 5 karakter kihagyása után: egy szövegsor a fájl belsejében.
A fenti példában azt a skip()módszert használtuk, hogy 5 karaktert kihagyjunk a fájlolvasóból. Ezért a karakterek 'T', 'h', 'i', 's'és ' 'kimarad az eredeti fájlt.
bezár () módszer
A pufferolt olvasó bezárásához használhatjuk a close()módszert. A close()módszer meghívása után nem használhatjuk az olvasót az adatok kiolvasására.
A BufferedReader egyéb módszerei
| Módszer | Leírás | 
|---|---|
ready()  |  ellenőrzi, hogy a fájlolvasó készen áll-e az olvasásra | 
mark()  |  jelölje meg az olvasó azon pozícióját, amelyre az adatokat beolvasták | 
reset()  |  a vezérlőt az olvasó azon pontjához adja vissza, ahol a jelölést beállították | 
További információkért látogasson el a Java BufferedReader oldalra (hivatalos Java dokumentáció).








