Klasa Java BufferedReader służy do odczytywania tekstu ze znakowego strumienia wejściowego. Można go używać do odczytu danych linia po linii metodą readLine(). Dzięki temu wydajność jest szybka. Dziedziczy czytnika klasa .
Deklaracja klasy Java BufferedReader
Zobaczmy deklarację klasy Java.io.BufferedReader:
public class BufferedReader extends Reader
Konstruktorzy klasy Java BufferedReader
Konstruktor | Opis |
---|---|
BufferedReader(Reader rd) | Służy do tworzenia buforowanego strumienia wejściowego znaków, który wykorzystuje domyślny rozmiar bufora wejściowego. |
BufferedReader (Reader rd, rozmiar int) | Służy do tworzenia buforowanego strumienia wejściowego znaków, który wykorzystuje określony rozmiar bufora wejściowego. |
Metody klasy Java BufferedReader
metoda | Opis |
---|---|
int czytać() | Służy do odczytywania pojedynczego znaku. |
int odczyt(char[] cbuf, int wył., int len) | Służy do wczytywania znaków do części pliku szyk . |
znak logicznySupported() | Służy do testowania obsługi strumienia wejściowego dla metody mark and reset. |
Ciąg readLine() | Służy do czytania linijki tekstu. |
wartość logiczna gotowa() | Służy do sprawdzenia, czy strumień wejściowy jest gotowy do odczytu. |
długi przeskok (długi n) | Służy do pomijania znaków. |
nieważne resetowanie() | Zmienia położenie strumień na pozycji metoda mark została ostatnio wywołana w tym strumieniu wejściowym. |
pusty znak (int readAheadLimit) | Służy do oznaczania aktualnej pozycji w strumieniu. |
puste zamknięcie() | Zamyka strumień wejściowy i zwalnia wszystkie zasoby systemowe powiązane ze strumieniem. |
Przykład Java BufferedReader
W tym przykładzie czytamy dane z pliku tekstowego plik testowy.txt przy użyciu klasy Java BufferedReader.
package com.javatpoint; import java.io.*; public class BufferedReaderExample { public static void main(String args[])throws Exception{ FileReader fr=new FileReader('D:\testout.txt'); BufferedReader br=new BufferedReader(fr); int i; while((i=br.read())!=-1){ System.out.print((char)i); } br.close(); fr.close(); } }
Zakładamy tutaj, że masz następujące dane w pliku „testout.txt”:
Welcome to javaTpoint.
Wyjście:
Welcome to javaTpoint.
Odczyt danych z konsoli za pomocą funkcji InputStreamReader i BufferedReader
W tym przykładzie łączymy strumień BufferedReader ze strumieniem WejścieStreamReader w celu odczytu danych linia po linii z klawiatury.
package com.javatpoint; import java.io.*; public class BufferedReaderExample{ public static void main(String args[])throws Exception{ InputStreamReader r=new InputStreamReader(System.in); BufferedReader br=new BufferedReader(r); System.out.println('Enter your name'); String name=br.readLine(); System.out.println('Welcome '+name); } }
Wyjście:
Enter your name Nakul Jain Welcome Nakul Jain
Kolejny przykład odczytu danych z konsoli do momentu zatrzymania zapisu przez użytkownika
W tym przykładzie czytamy i drukujemy dane do momentu zatrzymania drukowania przez użytkownika.
package com.javatpoint; import java.io.*; public class BufferedReaderExample{ public static void main(String args[])throws Exception{ InputStreamReader r=new InputStreamReader(System.in); BufferedReader br=new BufferedReader(r); String name=''; while(!name.equals('stop')){ System.out.println('Enter data: '); name=br.readLine(); System.out.println('data is: '+name); } br.close(); r.close(); } }
Wyjście:
repozytorium mavena
Enter data: Nakul data is: Nakul Enter data: 12 data is: 12 Enter data: stop data is: stop