Java BufferedReader-klassen används för att läsa texten från en teckenbaserad inmatningsström. Den kan användas för att läsa data rad för rad efter metoden readLine(). Det gör prestandan snabb. Det ärver Reader klass .
Java BufferedReader klassdeklaration
Låt oss se deklarationen för klassen Java.io.BufferedReader:
public class BufferedReader extends Reader
Java BufferedReader-klasskonstruktörer
Konstruktör | Beskrivning |
---|---|
BufferedReader(Reader rd) | Den används för att skapa en buffrad teckeninmatningsström som använder standardstorleken för en indatabuffert. |
BufferedReader(Reader rd, int size) | Den används för att skapa en buffrad teckeninmatningsström som använder den angivna storleken för en indatabuffert. |
Java BufferedReader klassmetoder
Metod | Beskrivning |
---|---|
int read() | Den används för att läsa ett enstaka tecken. |
int read(char[] cbuf, int off, int len) | Den används för att läsa tecken i en del av en array . |
boolean markSupported() | Den används för att testa ingångsströmstödet för markerings- och återställningsmetoden. |
String readLine() | Den används för att läsa en textrad. |
boolesk redo() | Den används för att testa om ingångsströmmen är redo att läsas. |
långt hoppa (långt n) | Den används för att hoppa över tecken. |
void reset() | Den ompositionerar ström vid en position som markeringsmetoden senast anropades på denna ingångsström. |
void mark (int readAheadLimit) | Den används för att markera den aktuella positionen i en ström. |
void close() | Den stänger ingångsströmmen och frigör alla systemresurser som är associerade med strömmen. |
Exempel på Java BufferedReader
I det här exemplet läser vi data från textfilen testout.txt använder Java BufferedReader-klassen.
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(); } }
Här antar vi att du har följande data i filen 'testout.txt':
Welcome to javaTpoint.
Produktion:
Welcome to javaTpoint.
Läser data från konsolen med InputStreamReader och BufferedReader
I det här exemplet kopplar vi BufferedReader-strömmen med InputStreamReader-strömmen för att läsa rad för rad-data från tangentbordet.
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); } }
Produktion:
Enter your name Nakul Jain Welcome Nakul Jain
Ett annat exempel på att läsa data från konsolen tills användaren skriver stopp
I det här exemplet läser och skriver vi ut data tills användaren slutar skriva ut.
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(); } }
Produktion:
filmer123 till
Enter data: Nakul data is: Nakul Enter data: 12 data is: 12 Enter data: stop data is: stop