Číta text z prúdového vstupu znakov, pričom znaky ukladá do vyrovnávacej pamäte, aby sa zabezpečilo efektívne čítanie znakov, polí a riadkov. Veľkosť vyrovnávacej pamäte môže byť špecifikovaná alebo môže byť použitá predvolená veľkosť. Predvolená hodnota je dostatočne veľká na väčšinu účelov. Vo všeobecnosti každá požiadavka na čítanie uskutočnená čítačkou spôsobí, že sa vykoná zodpovedajúca požiadavka na čítanie základného znaku alebo toku bajtov. Preto je vhodné zabaliť BufferedReader okolo akéhokoľvek Readera, ktorého operácie read() môžu byť nákladné, ako sú FileReaders a InputStreamReaders. Programy, ktoré používajú DataInputStreams na textový vstup, je možné lokalizovať nahradením každého z nich DataInputStream s primeraným BufferedReader .
Konštruktory triedy BufferedReader
Konštruktér | Akcia vykonaná |
---|---|
BufferedReader (Reader in) | Vytvorí tok vstupu znakov do vyrovnávacej pamäte, ktorý používa vstupnú vyrovnávaciu pamäť štandardnej veľkosti |
BufferedReader(čítačka v, int sz) | Vytvorí tok vstupu znakov do vyrovnávacej pamäte, ktorý používa vstupnú vyrovnávaciu pamäť určenej veľkosti. |
Metódy triedy BufferedReader
Názov metódy | Akcia |
---|---|
Zavrieť() | Zatvorí stream a uvoľní všetky systémové prostriedky, ktoré sú s ním spojené. Po zatvorení streamu ďalšie vyvolávania read(), ready(), mark(), reset() alebo skip() vyvolajú IOException. Uzavretie predtým uzavretého streamu nemá žiadny účinok. |
značka() | Označuje aktuálnu polohu v prúde. Nasledujúce volania funkcie reset() sa pokúsia premiestniť prúd do tohto bodu. |
markSupported() | Hovorí, či tento prúd podporuje operáciu mark(), čo podporuje. |
čítať() | Číta jeden znak. |
read(char[] cbuf, int off, int len) | Číta znaky do časti poľa. Táto metóda implementuje všeobecnú zmluvu zodpovedajúcej metódy čítania triedy Reader. Ako ďalšie pohodlie sa pokúša prečítať čo najviac znakov opakovaným vyvolaním metódy čítania základného prúdu. |
readLine() | Prečíta riadok textu. Riadok sa považuje za ukončený ľubovoľným znakom posunu riadka („ “), posunu riadka („ “) alebo posunu vozíka, po ktorom bezprostredne nasleduje posun riadka. |
pripravený() | Informuje, či je tento stream pripravený na čítanie. |
reset() | Resetuje stream na najnovšiu značku. |
preskočiť (dlhé) | Preskakuje znaky. |
Implementácia: Obsah súboru je nasledovný:
This is first line this is second line>
Príklad
zoznam polí java
Java
jquery kliknutím
// Java Program to Illustrate BufferedReader Class> // Via Its Methods> > // Importing required classes> import> java.io.BufferedReader;> import> java.io.FileReader;> import> java.io.IOException;> > // Class> class> GFG {> > > // Main driver method> > public> static> void> main(String[] args)> > throws> IOException> > {> > > // Creating object of FileReader and BufferedReader> > // class> > FileReader fr => new> FileReader(> 'file.txt'> );> > BufferedReader br => new> BufferedReader(fr);> > > char> c[] => new> char> [> 20> ];> > > // Illustrating markSupported() method> > if> (br.markSupported()) {> > > // Print statement> > System.out.println(> > 'mark() method is supported'> );> > > // Illustrating mark method> > br.mark(> 100> );> > }> > > // File Contents is as follows:> > // This is first line> > // this is second line> > > // Skipping 8 characters> > br.skip(> 8> );> > > // Illustrating ready() method> > if> (br.ready()) {> > > // Illustrating readLine() method> > System.out.println(br.readLine());> > > // Illustrating read(char c[],int off,int len)> > br.read(c);> > > for> (> int> i => 0> ; i <> 20> ; i++) {> > System.out.print(c[i]);> > }> > > System.out.println();> > > // Illustrating reset() method> > br.reset();> > for> (> int> i => 0> ; i <> 8> ; i++) {> > > // Illustrating read() method> > System.out.print((> char> )br.read());> > }> > }> > }> }> |
dátumový reťazec java
>
meno
>
Výkon:
mark() method is supported first line this is second line This is>