Java PushbackReader Sınıfı
PushbackReader sınıfı Java'da bunun bir parçasıdır java.io.paket ve bir akıştan karakterleri okumak için kullanılır. Bu sınıf, karakterleri akışa geri göndermemizi sağlar.
PushbackReader Sınıfının Özellikleri:
- Bu sınıf, karakterleri akışa geri göndermemize olanak tanıyan bir arabellek kullanır.
- Bu sınıf, metinleri okumak ve karakterleri hemen kullanmadan kontrol etmek için mükemmeldir. Karaktere ihtiyaç duyulmuyorsa geri itilebilir.
Örnek:
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 (); } } }
Çıkış
Read character: H Read character again: H Next character: e
PushbackReader Sınıfının Beyanı
PushbackReader sınıfının beyanı aşağıda listelenmiştir:
genel sınıf PushbackReader, FilterReader'ı genişletiyor
Uygulanan Tüm Arayüzler:
- Kapatılabilir: Bu arayüz kaynakları serbest bırakmak için kullanılır
- Otomatik Kapatılabilir: Bu arayüz, kaynakları dene ifadesinin otomatik olarak kapatılmasına izin verir.
- Okunabilir: Bu arayüz nesneden veri okumak için kullanılır.
PushbackReader'daki yapıcılar
Bu sınıf, yardımıyla bu sınıfın nesnesini farklı şekillerde yaratabileceğimiz iki kurucudan oluşur. Bu sınıfta mevcut olan yapıcılar şunlardır:
1. PushbackReader(Okuyucu itme): Bu yapıcı, varsayılan geri itme arabelleğine sahip yeni bir PushbackReader oluşturmak için kullanılır.
Sözdizimi:
genel PushbackReader(Okuyucu push)
Örnek:
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 (); } } }
Çıkış
Hello World!
2. PushbackReader(Okuyucu push int boyutu): Bu yapıcı geri itme arabelleğinin boyutunu belirtmemize olanak tanır
Sözdizimi:
public PushbackReader(Okuyucu push int boyutu)
Örnek:
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 (); } } }
Çıkış
Hello World!
Java PushbackReader Yöntemleri
Aşağıdaki görüntü CharArrayWriter sınıfının yöntemlerini göstermektedir.
Şimdi her yöntemi tek tek ayrıntılı olarak tartışacağız:
1. oku(): Bu yöntem akıştan her defasında bir karakter okumak için kullanılır.
Sözdizimi:
genel int okuma()
- Parametre: Bu yöntem herhangi bir parametre almaz.
- İade Türü: Bu yöntem, okunan karakteri bir tamsayı olarak döndürür veya akışın sonuna ulaşıldığında -1 değerini döndürür.
2. read(char[] carray int offset int maxlen): Bu yöntem, bir grup karakterin okunması için kullanılır.
Sözdizimi:
public int read(char[] carray int ofset int maxlen)
- Parametre: Bu yöntem aşağıda listelenen üç parametreyi içerir
- karakter[] carray: Okunan karakterlerin olacağı bir karakter dizisidir saklandı.
- int ofset: Dizideki başlangıç konumudur
- int maksimum: Okunacak maksimum karakter sayısıdır.
- İade Türü: Bu yöntem okunan karakter sayısını döndürür
3. kapat(): Bu yöntem okuyucuyu kapatmak için kullanılır
Sözdizimi:
genel geçersiz kapatma ()
- Parametre: Bu yöntem herhangi bir parametre almaz
- İade Türü: Bu yöntem hiçbir şey döndürmez.
4. mark(int readAheadLimit): Bu yöntem akıştaki mevcut konumu işaretlemek için kullanılır
Sözdizimi:
genel geçersiz işaret(int readAheadLimit)
- Parametre: Bu yöntem, işaret konumu geçersiz hale gelmeden önce okunabilecek maksimum karakter sayısını belirten bir readAheadLimit parametresini içerir.
- İade Türü: Bu yöntem hiçbir şey döndürmez
5. atla(uzun n): Bu yöntem belirli sayıda karakteri atlamak için kullanılır.
Sözdizimi:
halka açık uzun atlama (uzun n)
- Parametre: Bu yöntem, akışta atlanacak karakter sayısı olan uzun n parametresini içerir.
- İade Türü: Bu yöntem atlanan karakter sayısını döndürür
6. sıfırlama(): Bu yöntem mark() öğesinin çağrıldığı konuma geri dönmek için kullanılır.
Sözdizimi:
genel geçersiz sıfırlama ()
- Parametre: Bu yöntem herhangi bir parametre almaz
- İade Türü: Bu yöntem hiçbir şey döndürmez
7. markSupported(): Bu yöntem, akışın işaretlemeyi destekleyip desteklemediğini söyler
Sözdizimi:
genel boolean markSupported()
- Parametre: Bu yöntem herhangi bir parametre almaz
- İade Türü: Bu yöntem işaretleme desteklenmediğinden false değerini döndürür.
8. hazır(): Bu yöntem, akışın okumaya hazır olup olmadığını kontrol eder.
Sözdizimi:
genel boole hazır()
- Parametre: Bu yöntem herhangi bir parametre almaz
- İade Türü: Bu yöntem, akış hazırsa true değerini döndürür.
9. okunmamış(int c): Bu yöntem, karakteri akışa geri göndermek için kullanılır.
Sözdizimi:
genel geçersiz okunmamış (int c)
- Parametre: Bu yöntem, akışa geri gönderilecek karakter olan c olan tek bir parametreyi alır.
- İade Türü: Bu yöntem hiçbir şey döndürmez.
10. okunmamış(karakter[] carray): Bu yöntem, karakter dizisini akışa geri göndermek için kullanılır.
Sözdizimi:
genel geçersiz okunmamış(char[] carray)
- Parametre: Bu yöntem, akışa geri gönderilecek bir dizi karakter alır.
- İade Türü: Bu yöntem hiçbir şey döndürmez.
PushbackReader Yöntemlerini Gösteren Java Programı
Örnek:
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 (); } }
Çıkış
Is the stream ready? true Using read() and skip(): Geso Using read() with an array: r After unread() the next character: FTest Oluştur