Java StringBufferInputStream klase
The StringBufferInoutStream klase Java valodā ļauj no virknes izveidot ievades straumi, lai no tās varētu nolasīt baitus. Tas darbojas tikai ar katras rakstzīmes apakšējiem 8 bitiem. Tas nevar apstrādāt visu rakstzīmju vērtību diapazonu. Tā vietā, lai izmantotu šo klasi, vislabākā pieeja ir izmantot ByteArrayInputStream kam nav šī ierobežojuma, tas var nolasīt visu rakstzīmju vērtību diapazonu.
Piezīme: Oracle ir novecojis StringBufferInputStream.
StringBufferInputStream klases deklarācija
Klases StringBufferInputStream deklarācija ir norādīta zemāk:
publiskā klase StringBufferInputStream paplašina InputStream
Konstruktori programmā StringBufferInputStream
Šī klase sastāv no viena konstruktora, ar kura palīdzību varam izveidot šīs klases objektu.
1. StringBufferInputStream(String str): T viņa konstruktors tiek izmantots, lai izveidotu virknes ievades straumi, lai nolasītu datus no noteiktas virknes.
Sintakse:
StringBufferInputStream(String str)
Piemērs:
Java // Demonstrating the working // of StringBufferInputStream(String str) import java.io.* ; public class Geeks { public static void main ( String [] args ) { // Creating a String to be used with StringBufferInputStream String str = 'Hello World!' ; // Creating StringBufferInputStream from the String StringBufferInputStream is = new StringBufferInputStream ( str ); // Reading bytes from the StringBufferInputStream int data ; try { while (( data = is . read ()) != - 1 ) { // Print each byte as a character System . out . print (( char ) data ); } is . close (); } catch ( IOException e ) { e . printStackTrace (); } } }
Izvade
Hello World!
Java StringBufferStream metodes
Zemāk esošajā attēlā ir parādītas PipedWriter klases metodes.
Tagad mēs detalizēti apspriedīsim katru metodi pa vienam:
1. lasīt (): Šo metodi izmanto, lai no ievades straumes nolasītu datu baitu
Sintakse:
publisks int read()
- Parametrs: Šī metode neņem nekādus parametrus.
- Atgriešanas veids: Šī metode atgriež nolasīto rakstzīmi kā veselu skaitli, pretējā gadījumā atgriež -1, kad tiek sasniegts straumes beigas.
2. read(byte[] buferis int offset int maxlen): Šo metodi izmanto, lai no bufera nolasītu noteiktu rakstzīmju skaitu.
Sintakse:
publisks int lasīt(baits[] buferis int nobīde int maxlen)
- Parametrs: Šai metodei ir nepieciešami trīs parametri, kas ir norādīti zemāk:
- buferis: Tas ir masīvs rakstzīmju glabāšanai
- nobīde: Tā ir sākuma pozīcija, kur glabāt raksturu
- Maxlen: Tas ir maksimālais nolasāmo rakstzīmju skaits.
- Atgriešanas veids: Šī metode atgriež maksimālo nolasāmo rakstzīmju skaitu, pretējā gadījumā atgriež -1, kad tiek sasniegts straumes beigas.
3. atiestatīt(): Šo metodi izmanto, lai atiestatītu straumi, un tāpēc lasīšana sākas no sākuma.
Sintakse:
public Void reset()
- Parametrs: Šī metode neņem nekādus parametrus.
- Atgriešanas veids: Šī metode neko neatgriež.
4. izlaist (garš n): Šo metodi izmanto, lai izlaistu un ignorētu dažas rakstzīmes ievades straumē.
Sintakse:
publiska garā izlaišana (garais n)
- Parametrs: Šī metode izmanto vienu parametru n, kas ir izlaižamo baitu skaits
- Atgriešanas veids: Šī metode atgriež faktisko izlaisto baitu skaitu.
5. pieejams(): Šī metode norāda, cik rakstzīmju ir atlicis nolasīt ievades straumē
Sintakse:
publiski pieejams()
- Parametrs: šī metode neņem nekādus parametrus
- Atgriešanas veids: šī metode atgriež rakstzīmju skaitu, ko var nolasīt no ievades straumes.
Java programma, kas ilustrē StringBufferInputStream klases metožu darbību
Tagad zemāk esošajā piemērā mēs redzēsim visu metožu darbību.
Piemērs:
Java // Demonstrating the working of // read() read(byte[] buffer int offset int maxlen) // reset() skip(long n) available() import java.io.* ; public class Geeks { public static void main ( String [] args ) throws IOException { String s1 = 'Hello Geeks' ; String s2 = 'GeeksForGeeks' ; StringBufferInputStream b1 = new StringBufferInputStream ( s1 ); StringBufferInputStream b2 = new StringBufferInputStream ( s2 ); // available() System . out . println ( 'Use of available() 1: ' + b1 . available ()); int a ; System . out . println ( 'Use of read() method:' ); while (( a = b1 . read ()) != - 1 ) { char c = ( char ) a ; System . out . println ( c ); // skip() b1 . skip ( 1 ); } System . out . println ( 'Use of available() 2: ' + b2 . available ()); byte [] byteBuffer = new byte [ 15 ] ; b2 . read ( byteBuffer 1 2 ); int b ; System . out . print ( 'Remaining characters after partial read: ' ); while (( b = b2 . read ()) != - 1 ) { System . out . print (( char ) b ); } // reset() b1 . reset (); System . out . print ( 'nAfter reset(): ' ); int i ; while (( i = b1 . read ()) != - 1 ) { System . out . print (( char ) i ); } } }
Izvade
Use of available() 1: 11 Use of read() method: H l o G e s Use of available() 2: 13 Remaining characters after partial read: eksForGeeks After reset(): Hello GeeksIzveidojiet viktorīnu