Java StringBufferInputStream Class
ה מחלקה StringBufferInoutStream ב-Java מאפשר לנו ליצור זרם קלט ממחרוזת כך שנוכל לקרוא בתים ממנה. זה עובד רק עם 8 הסיביות התחתונות של כל תו זה לא יכול להתמודד עם כל טווח ערכי התווים. במקום להשתמש במחלקה זו, הגישה הטובה ביותר היא להשתמש ByteArrayInputStream שאין לו מגבלה זו הוא יכול לקרוא את כל טווח ערכי התווים.
פֶּתֶק: ה-StringBufferInputStream הוצא משימוש על ידי אורקל.
הצהרת StringBufferInputStream Class
ההצהרה של המחלקה StringBufferInputStream היא להלן:
class public StringBufferInputStream מרחיב את InputStream
קונסטרוקטורים ב-StringBufferInputStream
מחלקה זו מורכבת מבנאי אחד שבעזרתו נוכל ליצור אובייקט של מחלקה זו.
1. StringBufferInputStream(String str): T הבנאי שלו משמש ליצירת זרם קלט מחרוזת לקריאת נתונים ממחרוזת שצוינה.
תַחבִּיר:
StringBufferInputStream(String str)
דוּגמָה:
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!
שיטות Java StringBufferStream
התמונה למטה מדגימה את השיטות של מחלקה PipedWriter.
כעת נדון בפירוט על כל שיטה בזה אחר זה:
1. קרא(): שיטה זו משמשת לקריאת בתים של נתונים מזרם הקלט
תַחבִּיר:
public int read()
- פָּרָמֶטֶר: שיטה זו אינה לוקחת שום פרמטר.
- סוג החזרה: שיטה זו מחזירה את תו הקריאה כמספר שלם אחרת מחזירה -1 כאשר מגיעים לסוף הזרם.
2. read(byte[] buffer int offset int maxlen): שיטה זו משמשת לקריאת מספר מסוים של תווים ממאגר.
תַחבִּיר:
public int read(byte[] buffer int offset int maxlen)
- פָּרָמֶטֶר: שיטה זו לוקחת שלושה פרמטרים המפורטים להלן:
- בַּלָם: זהו מערך לאחסון דמויות
- לְקַזֵז: זוהי עמדת המוצא מאיפה לאחסן אופי
- מקסלן: זהו המספר המרבי של תווים לקריאה.
- סוג החזרה: שיטה זו מחזירה את המספר המרבי של תווים לקריאה אחרת מחזירה -1 כאשר מגיעים לסוף הזרם.
3. reset():
תַחבִּיר:
public void reset()
- פָּרָמֶטֶר: שיטה זו אינה לוקחת שום פרמטר.
- סוג החזרה: השיטה הזו לא מחזירה כלום.
4. דלג(ארוך n): שיטה זו משמשת כדי לדלג ולהתעלם מכמה תווים בזרם הקלט.
תַחבִּיר:
דילוג ארוך ציבורי(לונג n)
- פָּרָמֶטֶר: שיטה זו לוקחת פרמטר בודד n שהוא מספר הבתים שיש לדלג עליו
- סוג החזרה: שיטה זו מחזירה את המספר האמיתי של בתים שדילג עליהם.
5. זמין(): שיטה זו מציינת כמה תווים נותרו לקריאה בזרם הקלט
תַחבִּיר:
public int זמין()
- פרמטר: שיטה זו אינה לוקחת שום פרמטר
- סוג החזרה: שיטה זו מחזירה את מספר התווים שניתן לקרוא מזרם הקלט.
תוכנית Java הממחישה את פעולתן של שיטות כיתה StringBufferInputStream
כעת בדוגמה למטה נראה את העבודה של כל השיטות.
דוּגמָה:
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צור חידון