Java tillhandahåller flera mekanismer för att läsa från en fil . En viktig klass som hjälper till att utföra denna operation är BufferedReader . Så den här artikeln om BufferedReader i hjälper dig att förstå buffertläsarklassen tillsammans med exempel. Följande är ämnen som tas upp i den här bloggen:
- Vad är BufferedReader i Java?
- BufferedReader-klassdeklaration
- Java BufferedReader Constructors
- Metoder & beskrivning
- Skillnaden mellan Scanner och BufferReader
Vad är BufferedReader i Java?
BufferedReader är en Java-klass som läser text från inmatningsströmmen. Det buffrar karaktärerna så att det kan få en effektiv läsning av karaktärer, matriser , etc. Det ärver läsarklassen och gör koden effektiv eftersom vi kan läsa datan rad för rad med readline () . Det finns några tips som vi måste komma ihåg när vi arbetar med BufferedReader-klassen i Java.
- Vi kan behöva ange buffertstorleken även om standardvärdet är tillräckligt stort för alla syften.
- Med varje begäran som görs från en läsare motsvarande görs en läsförfrågan också av en underliggande karaktär.
- Det rekommenderas alltid att lägga en buffertläsarklass runt alla läsare som InputStreamReaders.
- För de program som använder DataInputaStreams för textinmatning ersätter en lämplig BufferedReader DataInputStream för att lokalisera den.
BufferedReader-klassdeklaration
public class BufferedReader utökar Reader
Java BufferedReader Constructors
Byggare | Beskrivning |
BufferedReader (läsare) gå till funktion i python | Den här konstruktören skapar en buffert-teckeninmatningsström som fungerar på en standardinmatningsbuffert. |
BufferedReader (Reader reader, int-storlek) | Den använder den angivna storleken för inmatningsbufferten för buffring av teckeninmatningsströmmen. |
Metoder och beskrivning
Nedan följer metoderna med beskrivningen som vi har för klassen Java BufferedReader.
Metod | Beskrivning |
int läs () | Läser en enda karaktär |
Sträng readLine () | Den läser en textrad |
ogiltig återställning () | Omplacerar strömmen till den position där markeringsmetoden senast anropades |
int read (char [] cb, int off, int len) | Läser karaktärerna i en del av en matris |
booleskt märkeSupported () | Det testar ingångsströmstödet för återställning och markeringsmetod |
boolean redo () | Den kontrollerar om ingångsströmmen är redo för läsning |
lång hoppa (lång n) | hoppar över karaktärerna |
ogiltigt stänga () | Det stänger ingångsströmmen |
ogiltigt märke (int readAheadLimit) | Används för att markera den aktuella positionen i strömmen |
Exempel:
vad är instans i java
importera java.io. * public class Exempel {public static void main (String args [] throw Exception) {FileReader f = new FileReader ('filelocation') BufferedReader b = new BufferedReader (f) int i while ((i = b. läs ())! = -1) {System.out.println ((char) i)} b.close () f.close ()
Skillnaden mellan scanner och buffertläsare
BufferedReader | Scanner |
Synkron och bör användas med flera trådar | Inte synkron och används inte med flera trådar |
Buffertminnet är större | Buffertminnet är mindre |
Snabbare än skannern hur man använder swing java | Långsammare eftersom det analyserar ingångsdata |
Det finns ingen tvetydighet relaterad till metoden nextline () | Det finns många problem med metoden nextline (). |
Använder buffring för att läsa tecken från teckeninmatningsströmmen | Det är en enkel textskanner som analyserar primitiva typer och strängar |
BufferedReader i JDK7-exempel
importera java.io. * public class Exempel {public static void main (String [] args) {try (BufferedReader b = new BufferedReader (new fileReader ('filnamn'))) {String s while ((s = b.readLine ( ))! = null) {System.out.println (s)}} fångst (IOException e) {e.printStackTrace ()}}}
Läsa data från konsolen av InputStreamReader och BufferedReader i Java
importera java.io. * public class Exempel {public static void main (String args [] throw Exception) {InputStreamReader i = new InputStreamReader (system.in) BufferedReader b = new BufferedReader (i) System.out.println ('Enter Course ') Strängkurs = b.readLine () System.out.pritln (' Edureka '+ kurs)}}
Produktion: Gå in på kurs Java Edureka Java
Läser data från konsolen tills användaren skriver stopp
importera java.io. * public class Exempel {public static void main (String args [] throw 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. stänga() } }
Produktion: ange kurs: Kurs är: Java ange kurs: Kurs är: stopp
Detta tar oss till slutet av den här artikeln där vi har lärt oss hur vi kan läsa tecken från teckeninmatningsströmmen med klassen BufferedReader i Java. Hoppas att du är tydlig med allt som har delats med dig i denna handledning.
Om du tyckte att den här artikeln om 'BufferedReader in Java' var relevant, kolla in ett pålitligt online-lärande företag med ett nätverk med mer än 250 000 nöjda elever spridda över hela världen.
Vi är här för att hjälpa dig med varje steg på din resa och komma med en läroplan som är utformad för studenter och yrkesverksamma som vill vara Java-utvecklare. Kursen är utformad för att ge dig ett försprång till Java-programmering och träna dig för både kärn- och avancerade Java-koncept tillsammans med olika tycka om Övervintra & .
Om du stöter på några frågor är du välkommen att ställa alla dina frågor i kommentarsektionen i 'BufferedReader i Java' så svarar vårt team gärna.