Java pakub mitmeid mehhanisme a-st lugemiseks faili . Üks oluline klass, mis aitab seda toimingut teha, on Puhverdatud lugeja . Niisiis, see artikkel puhverdatud lugeja kohta aitab teil puhverdaja klassi tundide mõistmisel koos näidetega. Selles blogis käsitletakse järgmisi teemasid:
- Mis on Java-s BufferedReader?
- BufferedReaderi klassi deklaratsioon
- Java puhverdatud lugejate konstruktorid
- Meetodid ja kirjeldus
- Skanneri ja BufferReaderi erinevus
Mis on Java-s BufferedReader?
BufferedReader on a Java klass mis loeb teksti sisendvoost. See puhverdab tähemärki, et see saaks märke tõhusalt lugeda, massiivid jne. See pärib lugejaklassi ja muudab koodi tõhusaks, kuna saame andmeid read-real lugeda read-real () . Java-klassis BufferedReader töötades peame meeles pidama mõningaid näpunäiteid.
- Võimalik, et peame määrama puhvri suuruse, kuigi vaikimisi on see mis tahes eesmärgil piisavalt suur.
- Iga lugeja vastava päringu korral tehakse lugemistaotlus ka selle aluseks olevast märgist.
- Alati on soovitatav pakkida BufferedReader klass ümber kõigi lugejate, näiteks InputStreamReaders.
- Programmide jaoks, mis kasutavad tekstisisestuseks DataInputaStreamsi, asendab DataInputStreami selle lokaliseerimiseks sobiv puhverdatud lugeja.
BufferedReaderi klassi deklaratsioon
avalik klass BufferedReader laiendab Readerit
Java puhverdatud lugejate konstruktorid
Ehitaja | Kirjeldus |
BufferedReader (lugeja lugeja) | See konstruktor loob puhverdava märgi-sisendi voo, mis töötab vaikimisi sisendpuhvris. |
BufferedReader (lugeja lugeja, int suurus) c ++ goto silt | Märgi-sisendvoo puhverdamiseks kasutatakse sisendpuhvri jaoks määratud suurust. |
Meetodid ja kirjeldus
Järgnevad meetodid koos kirjeldusega, mis meil on klassi Java BufferedReader jaoks.
Meetod | Kirjeldus |
int loe () | Loeb ühte märki |
String readLine () | See loeb tekstirida |
tühine lähtestamine () | Muudab voo positsiooni, kus märgistusmeetodit viimati kutsuti |
int loe (char [] cb, int off, int len) | Loeb tähemärki massiivi osas |
boolean markSupported () | See testib lähtevoo tuge lähtestamise ja märkimise meetodil |
boolean valmis () | See kontrollib, kas sisendvoog on lugemiseks valmis |
pikk vahelejätmine (pikk n) | jätab tegelased vahele |
tühine sulge () | See sulgeb sisendvoo |
void mark (int readAheadLimit) | Kasutatakse voos praeguse asukoha märkimiseks |
Näide:
import java.io. * public class Näide {public static void main (String args [] viskab erandi) {FileReader f = new FileReader ('filelocation') BufferedReader b = new BufferedReader (f) int i while ((i = b. loe ())! = -1) {System.out.println ((char) i)} b.close () f.close ()
Skanneri ja puhverdatud lugeja erinevus
Puhverdatud lugeja | Skanner |
Sünkroonne ja seda tuleks kasutada mitme lõimega | Pole sünkroonne ja seda ei kasutata mitme lõimega |
Puhvermälu on suurem | Puhvermälu on väiksem |
Kiirem kui skanner | Aeglasem, kuna see sisendab sisestatud andmeid |
Nextline () meetodiga pole seotud ebaselgust | Nextline () meetodiga on palju probleeme. |
Kasutab puhverdamist märkide lugemiseks sisendi voost | See on lihtne tekstiskanner, mis sõelub primitiivseid tüüpe ja stringe |
Puhverdatud lugeja JDK7 näites
import java.io. * avalik klass Näide {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)}} saak (IOException e) {e.printStackTrace ()}}}
Andmete lugemine konsoolilt Java-s InputStreamReaderi ja BufferedReaderi järgi
import java.io. * public class Näide {public static void main (String args [] viskab erandi) {InputStreamReader i = new InputStreamReader (system.in) BufferedReader b = new BufferedReader (i) System.out.println ('Sisesta kursus ') Stringkursus = b.readLine () System.out.pritln (' Edureka '+ kursus)}}
Väljund: Sisestage kursus Java Edureka Java
Andmete lugemine konsoolist, kuni kasutaja kirjutab
import java.io. * public class Näide {public static void main (String args [] viskab erandi) {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. Sulge() } }
Väljund: sisestage kursus: Kursus on: Java sisestage kursus: Kursus on: stop
See viib meid selle artikli lõppu, kus oleme õppinud, kuidas saame Java-s klassi BufferedReader abil märke sisendi voost lugeda. Loodetavasti on teil selge kõik see, mida teiega selles õpetuses jagati.
Kui leiate, et see artikkel jaotises „Java puhverdatud lugeja” on asjakohane, vaadake järgmist usaldusväärne veebiõppeettevõte, mille võrgustik sisaldab üle 250 000 rahuloleva õppija, levis üle kogu maailma.
kuidas Java-programmist väljuda
Oleme siin, et aidata teid igal sammul oma teekonnal ja koostada õppekava, mis on mõeldud õpilastele ja spetsialistidele, kes soovivad olla Java arendajad. Kursus on loodud selleks, et anda Java-programmeerimisele edukas algus ja õpetada teid nii põhi- kui ka edasijõudnute Java-kontseptsioonide jaoks koos erinevate võimalustega meeldib Talveunerežiim & .
Kui teil tekib küsimusi, esitage julgelt kõik oma küsimused jaotises „Java puhverdatud lugeja“ kommentaaride jaotises ja meie meeskond vastab sellele hea meelega.