Јава БуффередРеадер (са примерима)

У овом упутству ћемо научити о Јави БуффередРеадер и њеним методама уз помоћ примера.

BufferedReaderКласа у java.ioпакету могу се користити са другим читаоцима да ефикасније читање података (у карактерима).

Проширује апстрактну класу Reader.

Рад БуффередРеадер-а

BufferedReaderОдржава интерну пуфер 8192 знакова .

Током операције читања BufferedReader, комад карактера се чита са диска и чува у унутрашњем баферу. А из интерног међуспремника карактери се читају појединачно.

Дакле, број комуникације на диск је смањен. Због тога се читање знакова брже користи BufferedReader.

Направите БуффередРеадер

Да бисмо креирали BufferedReader, прво морамо да увозимо java.io.BuferedReaderпакет. Једном када увозимо пакет, ево како можемо створити читач.

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

У горњем примеру смо креирали BufferedReaderименовани бафер са FileReaderименованом датотеком.

Овде унутрашњи бафер BufferedReaderима подразумевану величину од 8192 знака. Међутим, можемо одредити и величину интерног бафера.

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

Бафер ће вам помоћи да брже прочитате знакове из датотека.

Методе БуффередРеадер-а

BufferedReaderКласа пружа имплементације за различите методе који су присутни у Reader.

реад () Метода

  • read() - чита један знак из унутрашњег бафера читача
  • read(char() array) - чита знакове из читача и складишти их у наведеном низу
  • read(char() array, int start, int length) - чита број знакова једнак дужини из читача и чува у наведеном низу почев од почетка положаја

На пример, претпоставимо да имамо датотеку која се зове инпут.ткт са следећим садржајем.

 This is a line of text inside the file. 

Покушајмо да читамо датотеку помоћу 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(); ) ) ) 

Оутпут

 Подаци у датотеци: Ово је ред текста унутар датотеке. 

У горњем примеру створили смо бафер читач под именом инпут. Ме успремник је повезан са датотеком инпут.ткт .

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

Овде смо користили read()методу за читање низа знакова из интерног ме успремника ме успремника.

метода прескочи ()

Да бисмо одбацили и прескочили наведени број знакова, можемо користити skip()методу. На пример,

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

Оутпут

 Подаци након прескакања 5 знакова: ред је текста унутар датотеке. 

У горњем примеру смо користили skip()методу за прескакање 5 знакова из читача датотека. Дакле, ликови 'T', 'h', 'i', 's'и ' 'прескачу од оригиналне датотеке.

цлосе () Метода

Да бисмо затворили бафер читач, можемо користити close()методу. Једном када се close()метода позове, не можемо користити читач за читање података.

Остале методе БуффередРеадер-а

Метод Опис
ready() проверава да ли је читач датотека спреман за читање
mark() означите положај у читачу до ког су подаци прочитани
reset() враћа контролу до тачке у читачу на којој је постављена ознака

Да бисте сазнали више, посетите Јава БуффередРеадер (званична Јава документација).

Занимљиви Чланци...