Java StringBufferInputStream klase

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.

io.StringBufferInputStream klase Java valodā


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 Geeks 
Izveidojiet viktorīnu

Top Raksti

Kategorija

Interesanti Raksti