logo

Java.io.BufferedReader klasė Java

Skaito tekstą iš simbolių įvesties srauto, buferizuoja simbolius, kad būtų galima efektyviai skaityti simbolius, masyvus ir eilutes. Gali būti nurodytas buferio dydis arba gali būti naudojamas numatytasis dydis. Numatytasis yra pakankamai didelis daugeliui tikslų. Apskritai, kiekviena skaitytuvo pateikta skaitymo užklausa sukelia atitinkamą pagrindinio simbolio arba baitų srauto nuskaitymo užklausą. Todėl patartina apvynioti BufferedReader aplink bet kurį skaitytuvą, kurio skaitymo () operacijos gali būti brangios, pvz., „FileReaders“ ir „InputStreamReaders“. Programos, kurios naudoja DataInputStreams teksto įvedimui, gali būti lokalizuotos pakeičiant kiekvieną DataInputStream su tinkamu BufferedReader .

BufferedReader klasės konstruktoriai

Konstruktorius Veiksmas atliktas
Buferinis skaitytuvas (skaitytuvas) Sukuria buferinį simbolių įvesties srautą, kuriame naudojamas numatytojo dydžio įvesties buferis
Buferinis skaitytuvas (skaitytojas, int sz) Sukuria buferinį simbolių įvesties srautą, kuris naudoja nurodyto dydžio įvesties buferį.

BufferedReader klasės metodai

Metodo pavadinimas Veiksmas
Uždaryti() Uždaromas srautas ir išleidžiami visi su juo susiję sistemos ištekliai. Kai srautas bus uždarytas, toliau skaitykite(), ready(), mark(), reset() arba skip() iškvietimai parodys IOException. Anksčiau uždaryto srauto uždarymas neturi jokios įtakos.
ženklas() Pažymi dabartinę padėtį sraute. Vėlesni iškvietimai reset() bandys perkelti srautą į šį tašką.
žymėti palaikoma() Nurodo, ar šis srautas palaiko mark() operaciją, kurią jis ir daro.
skaityti () Skaito vieną simbolį.
skaityti (char[] cbuf, int off, int len) Skaito simbolius į masyvo dalį. Šis metodas įgyvendina atitinkamo Reader klasės skaitymo metodo bendrąją sutartį. Kad būtų patogiau, ji bando perskaityti kuo daugiau simbolių, pakartotinai pasinaudodama pagrindinio srauto skaitymo metodu.
readLine () Skaito teksto eilutę. Laikoma, kad eilutė baigiama bet kuriuo iš eilutės padavimo („ “), vežimo grįžimo („ “) arba vežimo grįžimo, po kurio iškart seka eilutės tiekimas.
pasiruošęs () Nurodo, ar šis srautas paruoštas skaityti.
iš naujo () Iš naujo nustato srautą į naujausią ženklą.
praleisti (ilgai) Praleidžia simbolius.

Įgyvendinimas: Turinys failo viduje yra toks:

This is first line this is second line>

Pavyzdys



css paryškintas tekstas

Java


Excel datos skirtumas



// 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());> >}> >}> >}> }>

>

Vartotojo vardas

>

Išvestis:

driekiasi medžiai
mark() method is supported first line this is second line This is>