Java осигурява няколко механизма за четене от a файл . Един важен клас, който помага при извършването на тази операция, е BufferedReader . И така, тази статия за BufferedReader в ще ви помогне в разбирането на класа Bufferedreader заедно с примери. Следват темите, разгледани в този блог:
- Какво е BufferedReader в Java?
- Декларация за клас на BufferedReader
- Конструктори на Java BufferedReader
- Методи и описание
- Разлика между скенер и BufferReader
Какво е BufferedReader в Java?
BufferedReader е Java клас който чете текст от входния поток. Той буферира символите, така че да може да получи ефективното четене на символи, масиви и т.н. Той наследява класа на четеца и прави кода ефективен, тъй като можем да четем данните ред по ред с readline () . Има няколко указателя, които трябва да имаме предвид, докато работим с клас BufferedReader в Java.
- Може да се наложи да посочим размера на буфера, въпреки че по подразбиране е достатъчно голям за всякакви цели.
- С всяка заявка, направена от четец, се прави съответна, заявка за четене също се прави с основен знак.
- Винаги се препоръчва да обгърнете клас BufferedReader около всеки четец като InputStreamReaders.
- За програмите, които използват DataInputaStreams за текстово въвеждане, подходящ BufferedReader замества DataInputStream, за да го локализира.
Декларация за клас на BufferedReader
публичен клас BufferedReader разширява Reader
Конструктори на Java BufferedReader
Строител | Описание |
BufferedReader (четец на четец) | Този конструктор създава буфериращ поток за въвеждане на символи, който работи върху входен буфер с размер по подразбиране. |
BufferedReader (четец на четец, размер int) | Той използва определения размер за входния буфер за буфериране на потока за въвеждане на символи. |
Методи и описание
Следват методите с описанието, които имаме за класа Java BufferedReader.
Метод | Описание |
int read () | Чете един знак |
Низ readLine () | Чете ред текст |
възстановяване на празнотата () | Премества потока на позицията, където методът на маркиране е бил последно извикан |
int четене (char [] cb, int off, int len) | Чете символите в част от масив |
boolean markSupported () | Той тества поддръжката на входния поток за нулиране и метод на маркиране |
логически готов () | Той проверява дали входният поток е готов за четене |
дълъг пропуск (дълъг n) | пропуска символите |
void close () | Той затваря входния поток |
отметка за празнота (int readAheadLimit) | Използва се за маркиране на текущата позиция в потока |
Пример:
import java.io. * публичен клас Пример {public static void main (String args [] хвърля изключение) {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 ()
Разлика между скенер и буфериран четец
BufferedReader | Скенер |
Синхронно и трябва да се използва с множество нишки | Не е синхронен и не се използва с множество нишки |
Буферната памет е по-голяма | Буферната памет е по-малка отидете да функционирате в python |
По-бързо от скенера | По-бавно, защото прави синтактичен анализ на входните данни |
Няма неяснота, свързана с метода nextline () | Има много проблеми с метода nextline (). |
Използва буфериране за четене на символи от потока за въвеждане на символи | Това е прост скенер за текст, който анализира примитивни типове и низове |
Буфериран четец в JDK7 Пример
import java.io. * публичен клас Пример {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 ()}}}
Четене на данни от конзолата чрез InputStreamReader и BufferedReader в Java
import java.io. * публичен клас Пример {public static void main (String args [] хвърля изключение) {InputStreamReader i = new InputStreamReader (system.in) BufferedReader b = new BufferedReader (i) System.out.println ('Enter Course ') Низ курс = b.readLine () System.out.pritln (' Edureka '+ курс)}}
Изход: Въведете курс Java Edureka Java
Четенето на данни от конзолата, докато потребителят напише Stop
импортиране на java.io. * публичен клас Пример {public static void main (String args [] хвърля изключение) {InputStreamReader i = new InputStreamReader (system.in) BufferedReader b = new BufferedReader (i) string course = '' while (! name .equals ('stop')) {System.out.println ('enter курс:') course = b.readLine () System.out.println ('Курсът е:' + курс)} b.close () i. близо() } }
Изход: въведете курс: Курсът е: Java влезте в курс: Курсът е: спиране
Това ни води до края на тази статия, където научихме как можем да четем символи от потока за въвеждане на символи, използвайки класа BufferedReader в Java. Надявам се, че сте наясно с всичко споделено с вас в този урок.
Ако сте намерили тази статия за „BufferedReader в Java“ подходяща, разгледайте доверена компания за онлайн обучение с мрежа от над 250 000 доволни учащи, разпространени по целия свят.
Ние сме тук, за да ви помогнем при всяка стъпка по вашето пътуване и да изготвим учебна програма, предназначена за студенти и професионалисти, които искат да бъдат разработчик на Java. Курсът е предназначен да ви даде начален старт в програмирането на Java и да ви обучи както за основни, така и за разширени Java концепции, заедно с различни като Хибернация & .
Ако срещнете някакви въпроси, не се колебайте да зададете всичките си въпроси в раздела за коментари на „BufferedReader в Java“ и нашият екип ще се радва да отговори.