Jawa zapewnia kilka mechanizmów umożliwiających odczyt z pliku plik . Jedną z ważnych klas, która pomaga w wykonywaniu tej operacji, jest BufferedReader . Tak więc ten artykuł o BufferedReader w pomoże ci w zrozumieniu klasy Bufferedreader wraz z przykładami. Poniżej znajdują się tematy poruszone na tym blogu:
- Co to jest BufferedReader w Javie?
- Deklaracja klasy BufferedReader
- Konstruktory Java BufferedReader
- Metody i opis
- Różnica między skanerem a BufferReader
Co to jest BufferedReader w Javie?
BufferedReader to Klasa Java który czyta tekst ze strumienia wejściowego. Buforuje znaki, dzięki czemu może uzyskać efektywny odczyt znaków, tablice itp. Dziedziczy on klasę reader i sprawia, że kod jest wydajny, ponieważ możemy czytać dane wiersz po wierszu za pomocą metody readline () . Jest kilka wskazówek, o których musimy pamiętać podczas pracy z klasą BufferedReader w Javie.
- Być może będziemy musieli określić rozmiar bufora, nawet jeśli domyślny jest wystarczająco duży do dowolnego celu.
- Z każdym żądaniem skierowanym do czytnika jest również wykonywane odpowiednie, żądanie odczytu ze znaku bazowego.
- Zawsze zaleca się zawijanie klasy BufferedReader wokół dowolnego czytnika, takiego jak InputStreamReaders.
- W przypadku programów, które używają DataInputaStreams do wprowadzania tekstu, odpowiedni BufferedReader zastępuje DataInputStream, aby go zlokalizować.
Deklaracja klasy BufferedReader
klasa publiczna BufferedReader rozszerza program Reader
Konstruktory Java BufferedReader
Budowniczy | Opis |
BufferedReader (czytnik czytnika) | Ten konstruktor tworzy buforujący strumień wejściowy znaków, który działa na buforze wejściowym o domyślnym rozmiarze. |
BufferedReader (czytnik czytnika, rozmiar int) | Używa określonego rozmiaru buforu wejściowego do buforowania strumienia wejściowego znaków. |
Metody i opis
Poniżej przedstawiono metody z opisem, który mamy dla klasy Java BufferedReader.
metoda | Opis |
int read () | Odczytuje pojedynczy znak |
Ciąg readLine () | Czyta wiersz tekstu |
void reset () | Zmienia położenie strumienia do pozycji, w której ostatnio wywołano metodę mark |
int read (char [] cb, int off, int len) | Odczytuje znaki z części tablicy |
boolean markSupported () | Testuje obsługę strumienia wejściowego dla metody resetowania i markowania |
boolean ready () | Sprawdza, czy strumień wejściowy jest gotowy do odczytu |
długie przejście (długie n) | pomija znaki |
void close () | Zamyka strumień wejściowy |
void mark (int readAheadLimit) | Służy do zaznaczania aktualnej pozycji w strumieniu |
Przykład:
import java.io. * public class Przykład {public static void main (String args [] throws Exception) {FileReader f = new FileReader ('filelocation') BufferedReader b = new BufferedReader (f) int i while ((i = b. read ())! = -1) {System.out.println ((char) i)} b.close () f.close ()
Różnica między skanerem a BufferedReader
BufferedReader | Skaner |
Synchroniczny i powinien być używany z wieloma wątkami | Nie jest synchroniczny i nie jest używany z wieloma wątkami |
Pamięć bufora jest większa | Pamięć bufora jest mniejsza |
Szybszy niż skaner | Wolniej, ponieważ analizuje dane wejściowe |
Nie ma dwuznaczności związanej z metodą nextline () jak używać pakietu w java | Z metodą nextline () wiąże się wiele problemów. |
Używa buforowania do odczytywania znaków ze strumienia wprowadzania znaków | Jest to prosty skaner tekstu, który analizuje prymitywne typy i ciągi znaków |
BufferedReader w przykładzie JDK7
import java.io. * public class Przykład {public static void main (String [] args) {try (BufferedReader b = new BufferedReader (new fileReader ('filename'))) {String s while ((s = b.readLine ( ))! = null) {System.out.println (s)}} catch (IOException e) {e.printStackTrace ()}}}
Odczytywanie danych z konsoli przez InputStreamReader i BufferedReader w Javie
import java.io. * public class Przykład {public static void main (String args [] throws Exception) {InputStreamReader i = new InputStreamReader (system.in) BufferedReader b = new BufferedReader (i) System.out.println ('Wejdź na kurs ') String course = b.readLine () System.out.pritln (' Edureka '+ kurs)}}
Wynik: Wprowadź kurs Java Edureka Java
Odczytywanie danych z konsoli do momentu zatrzymania zapisu użytkownika
import java.io. * public class Przykład {public static void main (String args [] throws Exception) {InputStreamReader i = new InputStreamReader (system.in) BufferedReader b = new BufferedReader (i) string course = '' while (! name .equals ('stop')) {System.out.println ('enter course:') course = b.readLine () System.out.println ('Course is:' + course)} b.close () i. blisko() } }
Wynik: wprowadź kurs: Kurs to: Java Wprowadź kurs: Kurs to: stop
To prowadzi nas do końca tego artykułu, w którym nauczyliśmy się odczytywać znaki ze strumienia wejściowego znaków przy użyciu klasy BufferedReader w języku Java. Mam nadzieję, że wszystko, co zostało Ci udostępnione w tym samouczku, jest dla Ciebie jasne.
Jeśli uważasz, że ten artykuł na temat „BufferedReader w Javie” jest odpowiedni, zapoznaj się z zaufana firma zajmująca się edukacją online z siecią ponad 250 000 zadowolonych uczniów rozsianych po całym świecie.
Jesteśmy tutaj, aby pomóc Ci na każdym etapie Twojej podróży i opracować program nauczania przeznaczony dla studentów i profesjonalistów, którzy chcą zostać programistą Java. Kurs ma na celu zapewnienie przewagi w programowaniu w języku Java i szkolenie zarówno podstawowych, jak i zaawansowanych koncepcji języka Java, a także różnych lubić Hibernować & .
Jeśli natkniesz się na jakieś pytania, nie wahaj się zadawać wszystkich pytań w sekcji komentarzy „BufferedReader w Javie”, a nasz zespół z przyjemnością odpowie.