Legge il testo da un flusso di input di caratteri, memorizzando i caratteri nel buffer in modo da garantire la lettura efficiente di caratteri, matrici e righe. È possibile specificare la dimensione del buffer oppure utilizzare la dimensione predefinita. Il valore predefinito è sufficientemente grande per la maggior parte degli scopi. In generale, ogni richiesta di lettura effettuata da un Reader provoca l'esecuzione di una corrispondente richiesta di lettura del carattere o del flusso di byte sottostante. È quindi consigliabile avvolgere un BufferedReader attorno a qualsiasi Reader le cui operazioni read() possono essere costose, come FileReaders e InputStreamReaders. I programmi che utilizzano DataInputStreams per l'input testuale possono essere localizzati sostituendoli ciascuno DatiInputStream con un appropriato BufferedReader .
Costruttori della classe BufferedReader
| Costruttore | Azione eseguita |
|---|---|
| BufferedReader(Lettore in) | Crea un flusso di input di caratteri di buffering che utilizza un buffer di input di dimensioni predefinite |
| BufferedReader(Lettore in, int sz) | Crea un flusso di input di caratteri di buffering che utilizza un buffer di input della dimensione specificata. |
Metodi della classe BufferedReader
| Nome del metodo | Azione |
|---|---|
| vicino() | Chiude il flusso e rilascia tutte le risorse di sistema ad esso associate. Una volta chiuso il flusso, ulteriori invocazioni read(), ready(), mark(), reset() o skip() genereranno un'IOException. La chiusura di uno stream precedentemente chiuso non ha alcun effetto. |
| segno() | Contrassegna la posizione attuale nel flusso. Le chiamate successive a reset() tenteranno di riposizionare il flusso fino a questo punto. |
| markSupportato() | Indica se questo flusso supporta l'operazione mark(), cosa che fa. |
| Leggere() | Legge un singolo carattere. |
| leggi(char[] cbuf, int off, int len) | Legge i caratteri in una porzione di un array. Questo metodo implementa il contratto generale del corrispondente metodo di lettura della classe Reader. Per ulteriore comodità, tenta di leggere quanti più caratteri possibile invocando ripetutamente il metodo di lettura del flusso sottostante. |
| linea di lettura() | Legge una riga di testo. Una riga viene considerata terminata da uno qualsiasi tra un avanzamento riga (' '), un ritorno a capo (' ') o un ritorno a capo seguito immediatamente da un avanzamento riga. |
| pronto() | Indica se questo flusso è pronto per essere letto. |
| Ripristina() | Reimposta il flusso al segno più recente. |
| saltare (lungo) | Salta i caratteri. |
Implementazione: Il contenuto all'interno del file è il seguente:
This is first line this is second line>
Esempio
Bharti Jha
Giava
creazione di elenchi in Java
// 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());> >}> >}> >}> }> |
>
alternativa a xampp
>
Produzione:
allineamento img css
mark() method is supported first line this is second line This is>