Јава СтрингБуфферИнпутСтреам Цласс
Тхе СтрингБуфферИноутСтреам класа у Јави омогућава нам да креирамо улазни ток из стринга тако да можемо да читамо бајтове из њега. Ради само са нижих 8 битова сваког знака. Не може да обради цео опсег вредности знакова. Уместо коришћења ове класе, најбољи приступ је коришћење БитеАрраиИнпутСтреам који нема ово ограничење може да чита цео опсег вредности знакова.
Напомена: Орацле је застарео СтрингБуфферИнпутСтреам.
Декларација класе СтрингБуфферИнпутСтреам
Декларација класе СтрингБуфферИнпутСтреам је испод:
јавна класа СтрингБуфферИнпутСтреам проширује ИнпутСтреам
Конструктори у СтрингБуфферИнпутСтреам
Ова класа се састоји од једног конструктора уз помоћ којег можемо креирати објекат ове класе.
1. СтрингБуфферИнпутСтреам(Стринг стр): Т његов конструктор се користи за креирање стринг улазног тока за читање података из наведеног стринга.
Синтакса:
СтрингБуфферИнпутСтреам(Стринг стр)
Пример:
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 (); } } }
Излаз
Hello World!
Јава СтрингБуфферСтреам методе
Слика испод показује методе класе ПипедВритер.
Сада ћемо детаљно разговарати о свакој методи један по један:
1. реад(): Овај метод се користи за читање бајта података из улазног тока
Синтакса:
публиц инт реад()
- Параметар: Овај метод не узима ниједан параметар.
- Тип повратка: Овај метод враћа прочитани знак као цео број, иначе враћа -1 када се достигне крај тока.
2. реад(бите[] буффер инт оффсет инт маклен): Овај метод се користи за читање одређеног броја знакова из бафера.
Синтакса:
публиц инт реад(бите[] бафер инт оффсет инт маклен)
- Параметар: Овај метод узима три параметра која су наведена у наставку:
- тампон: То је низ за чување знакова
- офсет: То је почетна позиција одакле се чува карактер
- маклен: То је максималан број знакова за читање.
- Тип повратка: Овај метод враћа максималан број знакова за читање, иначе враћа -1 када се достигне крај стрима.
3. ресет (): Овај метод се користи за ресетовање тока и због тога читање почиње из почетка.
Синтакса:
јавно ресетовање празнине ()
- Параметар: Овај метод не узима ниједан параметар.
- Тип повратка: Овај метод не враћа ништа.
4. прескочи (дуго н): Овај метод се користи за прескакање и игнорисање неких знакова у улазном току.
Синтакса:
јавно дуго прескочи (дуго н)
- Параметар: Овај метод узима један параметар н који представља број бајтова које треба прескочити
- Тип повратка: Овај метод враћа стварни број прескочених бајтова.
5. доступно(): Овај метод говори колико је знакова остало за читање у улазном току
Синтакса:
јавни инт доступан()
- Параметар: Овај метод не узима ниједан параметар
- Тип враћања: Овај метод враћа број знакова који се могу прочитати из улазног тока.
Јава програм који илуструје рад метода класе СтрингБуфферИнпутСтреам
Сада ћемо у следећем примеру видети рад свих метода.
Пример:
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 ); } } }
Излаз
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Креирај квиз