The Clasa PushbackReader în Java face parte din java.io.package și este folosit pentru citirea caracterelor dintr-un flux. Această clasă ne permite să împingem personajele înapoi în flux.
Caracteristici ale clasei PushbackReader:
- Această clasă folosește un buffer care ne permite să împingem caracterele înapoi în flux.
- Această clasă este excelentă pentru citirea textului și verificarea caracterelor fără a le folosi imediat. Dacă personajul nu este necesar, acesta poate fi respins.
Exemplu:
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(); } } }
Ieșire
Read character: H Read character again: H Next character: e
Declarația clasei PushbackReader
Declarația clasei PushbackReader este listată mai jos:
actor chiranjeevi
clasa publică PushbackReader extinde FilterReader
Toate interfețele implementate:
- Închidere: Această interfață este folosită pentru a elibera resurse
- Închidere automată: Această interfață permite închiderea automată într-o declarație de încercare cu resurse.
- Citibil: Această interfață este folosită pentru a citi datele de pe obiect.
Constructori în PushbackReader
Această clasă este formată din doi constructori cu ajutorul cărora putem crea obiectul acestei clase în moduri diferite. Următorii sunt constructorii disponibili în această clasă:
Acest constructor este folosit pentru a crea un nou PushbackReader cu un buffer de respingere implicit.
Sintaxă:
Exemplu:
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(); } } }
Ieșire
Hello World!
2. PushbackReader (Reader push int size): Acest constructor ne permite să specificăm dimensiunea bufferului pushback
Sintaxă:
public PushbackReader (Dimensiunea cititorului push int)
Exemplu:
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(); } } }
Ieșire
Hello World!
gimp ștergerea fundalului
Metode Java PushbackReader
Imaginea de mai jos demonstrează metodele clasei CharArrayWriter.

Acum vom discuta despre fiecare metodă una câte una în detaliu:
1. citeste(): Această metodă este folosită pentru a citi câte un caracter din flux
Sintaxă:
public int read()
- Parametru: Această metodă nu ia niciun parametru.
- Tip returnare: Această metodă returnează caracterul citit ca un întreg sau returnează -1 când se ajunge la sfârșitul fluxului.
2. read(char[] carray int offset int maxlen): Această metodă este folosită pentru a citi o bucată de caractere.
Sintaxă:
public int read(char[] carray int offset int maxlen)
- Parametru: Această metodă include trei parametri care sunt enumerați mai jos
- char[] carray: Este o matrice de caractere în care vor fi caracterele citite stocate.
- int offset: Este poziția de pornire în matrice
- int maxlen: Este numărul maxim de caractere de citit.
- Tip returnare: Această metodă returnează numărul de caractere citite
3. închide(): Această metodă este folosită pentru a închide cititorul
Sintaxă:
vid public close()
anul în care a fost inventat computerul
- Parametru: Această metodă nu ia niciun parametru
- Tip returnare: Această metodă nu returnează nimic.
Această metodă este folosită pentru a marca poziția curentă în flux
Sintaxă:
marca public nulă (int readAheadLimit)
- Parametru: Această metodă include un parametru readAheadLimit care specifică numărul maxim de caractere care pot fi citite înainte ca poziția marcajului să devină invalidă.
- Tip returnare: Această metodă nu returnează nimic
5. săriți (n lung): Această metodă este folosită pentru a sări peste un anumit număr de caractere.
Sintaxă:
public long skip (n lung)
- Parametru: Această metodă include un parametru lung n care este numărul de caractere care trebuie sărit în flux.
- Tip returnare: Această metodă returnează numărul de caractere care este omis
6. resetare(): Această metodă este folosită pentru a reveni la poziția în care a fost apelat mark().
Sintaxă:
resetare public void()
cum se citește fișierul csv în java
- Parametru: Această metodă nu ia niciun parametru
- Tip returnare: Această metodă nu returnează nimic
7. markSupported(): Această metodă spune dacă fluxul acceptă marcarea sau nu
Sintaxă:
mark boolean publicSupported()
- Parametru: Această metodă nu ia niciun parametru
- Tip returnare: Această metodă returnează false deoarece marcarea nu este acceptată.
8. gata(): Această metodă verifică dacă fluxul este gata de citit sau nu.
Sintaxă:
public boolean gata()
mvc java
- Parametru: Această metodă nu ia niciun parametru
- Tip returnare: Această metodă returnează true dacă fluxul este gata.
9. necitit(int c): Această metodă este folosită pentru a împinge caracterul înapoi în flux.
Sintaxă:
public void necitit(int c)
- Parametru: Această metodă ia un singur parametru care este c, care este caracterul care trebuie împins înapoi în flux.
- Tip returnare: Această metodă nu returnează nimic.
10. necitit(char[] carray): Această metodă este folosită pentru a împinge o serie de caractere înapoi în flux.
Sintaxă:
public void necitit(char[] carray)
- Parametru: Această metodă necesită o serie de caractere pentru a fi împins înapoi în flux.
- Tip returnare: Această metodă nu returnează nimic.
Program Java pentru a demonstra metodele PushbackReader
Exemplu:
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(); } }
Ieșire
Is the stream ready? true Using read() and skip(): Geso Using read() with an array: r After unread() the next character: FCreați un test