Java PushbackReader klase
The PushbackReader klase Java ir daļa no java.io.package un tiek izmantots rakstzīmju lasīšanai no straumes. Šī klase ļauj atgriezt rakstzīmes straumē.
PushbackReader klases funkcijas:
- Šajā klasē tiek izmantots buferis, kas ļauj mums iespiest rakstzīmes atpakaļ straumē.
- Šī klase ir lieliski piemērota teksta lasīšanai un rakstzīmju pārbaudei, tās uzreiz neizmantojot. Ja varonis nav vajadzīgs, to var atstumt.
Piemērs:
Java // Demonstrating the working // of PushbackReader import java.io.* ; public class Geeks { public static void main ( String [] args ) { String s = 'Hello World!' ; StringReader sr = new StringReader ( s ); // Create a PushbackReader with the StringReader PushbackReader pr = new PushbackReader ( sr ); try { // Read the first character int char1 = pr . read (); System . out . println ( 'Read character: ' + ( char ) char1 ); // Push this character back into the stream pr . unread ( char1 ); // Read the same character again (since we pushed it back) int char2 = pr . read (); System . out . println ( 'Read character again: ' + ( char ) char2 ); // Continue reading the next character int char3 = pr . read (); System . out . println ( 'Next character: ' + ( char ) char3 ); // Close the reader pr . close (); } catch ( IOException e ) { e . printStackTrace (); } } }
Izvade
Read character: H Read character again: H Next character: e
PushbackReader klases deklarācija
PushbackReader klases deklarācija ir norādīta tālāk:
publiskā klase PushbackReader paplašina FilterReader
Visas ieviestās saskarnes:
- Aizverams: Šī saskarne tiek izmantota resursu atbrīvošanai
- Automātiski aizverams: Šis interfeiss nodrošina automātisku aizvēršanu izmēģināt ar resursiem paziņojumā.
- Lasāms: Šo interfeisu izmanto, lai nolasītu datus no objekta.
PushbackReader konstruktori
Šī klase sastāv no diviem konstruktoriem, ar kuru palīdzību mēs varam dažādos veidos izveidot šīs klases objektu. Šajā klasē ir pieejami šādi konstruktori:
1. PushbackReader (Reader push): Šis konstruktors tiek izmantots, lai izveidotu jaunu PushbackReader ar noklusējuma pushback buferi.
Sintakse:
publisks PushbackReader (Reader push)
Piemērs:
Java // Demonstrating the working // of PushbackReader(Reader push) import java.io.* ; public class Geeks { public static void main ( String [] args ) { // String to be read String s = 'Hello World!' ; // Create a StringReader to read from the string StringReader sr = new StringReader ( s ); // Create a PushbackReader with the StringReader PushbackReader pr = new PushbackReader ( sr ); try { // Read and print characters int charRead ; while (( charRead = pr . read ()) != - 1 ) { System . out . print (( char ) charRead ); } // Close the PushbackReader pr . close (); } catch ( IOException e ) { e . printStackTrace (); } } }
Izvade
Hello World!
2. PushbackReader (Reader push int izmērs): Šis konstruktors ļauj mums norādīt atgrūšanas bufera lielumu
Sintakse:
publiskais PushbackReader (lasītāja push int izmērs)
Piemērs:
Java // Demonstrating the working // of PushbackReader(Reader push int size) import java.io.* ; public class Geeks { public static void main ( String [] args ) { // String to be read String s = 'Hello World!' ; // Create a StringReader to read from the string StringReader sr = new StringReader ( s ); // Create a PushbackReader with the StringReader // and a specified buffer size of 20 PushbackReader pr = new PushbackReader ( sr 20 ); try { // Read and print characters int charRead ; while (( charRead = pr . read ()) != - 1 ) { System . out . print (( char ) charRead ); } // Close the PushbackReader pr . close (); } catch ( IOException e ) { e . printStackTrace (); } } }
Izvade
Hello World!
Java PushbackReader metodes
Zemāk esošajā attēlā parādītas CharArrayWriter klases metodes.
Tagad mēs detalizēti apspriedīsim katru metodi pa vienam:
1. lasīt (): Šo metodi izmanto, lai no straumes nolasītu vienu rakstzīmi
Sintakse:
publisks int read()
- Parametrs: Šī metode neņem nekādus parametrus.
- Atgriešanas veids: Šī metode atgriež nolasīto rakstzīmi kā veselu skaitli vai atgriež -1, kad tiek sasniegts straumes beigas.
2. lasīt(char[] carray int offset int maxlen): Šo metodi izmanto, lai nolasītu rakstzīmju daļu.
Sintakse:
publiskais int lasīt(char[] carray int offset int maxlen)
- Parametrs: Šī metode ietver trīs tālāk norādītos parametrus
- char[] carray: Tas ir rakstzīmju masīvs, kurā būs lasītās rakstzīmes glabājas.
- int nobīde: Tā ir sākuma pozīcija masīvā
- int maxlen: Tas ir maksimālais nolasāmo rakstzīmju skaits.
- Atgriešanas veids: Šī metode atgriež nolasīto rakstzīmju skaitu
3. aizvērt(): Šo metodi izmanto, lai aizvērtu lasītāju
Sintakse:
publisks tukšums aizvērt ()
- Parametrs: Šī metode neņem nekādus parametrus
- Atgriešanas veids: Šī metode neko neatgriež.
4. atzīme (int readAheadLimit): Šo metodi izmanto, lai atzīmētu pašreizējo pozīciju straumē
Sintakse:
publiska tukšuma atzīme (int readAheadLimit)
- Parametrs: Šī metode ietver vienu parametru readAheadLimit, kas norāda maksimālo rakstzīmju skaitu, ko var nolasīt, pirms atzīmes pozīcija kļūst nederīga.
- Atgriešanas veids: Šī metode neko neatgriež
5. izlaist (garš n): Šo metodi izmanto, lai izlaistu noteiktu skaitu rakstzīmju.
Sintakse:
publiska garā izlaišana (garais n)
- Parametrs: Šī metode ietver vienu n garu parametru, kas ir straumē izlaižamo rakstzīmju skaits.
- Atgriešanas veids: Šī metode atgriež izlaisto rakstzīmju skaitu
6. atiestatīt(): Šo metodi izmanto, lai atgrieztos pozīcijā, kurā tika izsaukta mark().
Sintakse:
public Void reset()
- Parametrs: Šī metode neņem nekādus parametrus
- Atgriešanas veids: Šī metode neko neatgriež
7. MarkSupported(): Šī metode norāda, vai straume atbalsta atzīmēšanu vai ne
Sintakse:
publiskā Būla atzīmeSupported()
- Parametrs: Šī metode neņem nekādus parametrus
- Atgriešanas veids: Šī metode atgriež false, jo atzīmēšana netiek atbalstīta.
8. gatavs(): Šī metode pārbauda, vai straume ir gatava lasīšanai.
Sintakse:
publisks Būla gatavs()
- Parametrs: Šī metode neņem nekādus parametrus
- Atgriešanas veids: Šī metode atgriež patieso vērtību, ja straume ir gatava.
9. nelasīts(int c): Šo metodi izmanto, lai rakstzīmi atgrieztu straumē.
Sintakse:
public void nelasīts(int c)
- Parametrs: Šī metode izmanto vienu parametru, kas ir c, kas ir rakstzīme, kas jāiespiež atpakaļ straumē.
- Atgriešanas veids: Šī metode neko neatgriež.
10. nelasīts(char[] carray): Šo metodi izmanto, lai rakstzīmju masīvu atgrieztu straumē.
Sintakse:
public void nelasīts(char[] carray)
- Parametrs: Izmantojot šo metodi, ir nepieciešams rakstzīmju masīvs, kas tiek virzīts atpakaļ straumē.
- Atgriešanas veids: Šī metode neko neatgriež.
Java programma PushbackReader metožu demonstrēšanai
Piemērs:
Java // Demonstrating the working // of methods of PushbackReader class import java.io.* ; public class Geeks { public static void main ( String [] args ) throws IOException { String s = 'GeeksForGeeks' ; StringReader sr = new StringReader ( s ); PushbackReader pr = new PushbackReader ( sr ); // Check if the stream is ready System . out . println ( 'Is the stream ready? ' + pr . ready ()); // Use read() and skip() System . out . print ( 'Using read() and skip(): ' ); for ( int i = 0 ; i < 3 ; i ++ ) { char c = ( char ) pr . read (); // Read 1 char System . out . print ( c ); pr . skip ( 1 ); // Skip next char } char c = ( char ) pr . read (); // read next char after 3 skip cycles System . out . print ( c ); // Now read() with array – only 1 char expected char [] arr = new char [ 1 ] ; pr . read ( arr ); System . out . println ( 'nUsing read() with an array: ' + new String ( arr )); // Unread and read back pr . unread ( 'F' ); char nextChar = ( char ) pr . read (); System . out . println ( 'After unread() the next character: ' + nextChar ); // Close the reader pr . close (); } }
Izvade
Is the stream ready? true Using read() and skip(): Geso Using read() with an array: r After unread() the next character: FIzveidojiet viktorīnu