जावा इनपुटस्ट्रीम कैसे काम करता है

Java Inaputastrima Kaise Kama Karata Hai



जावा डेवलपर्स को फाइलों के साथ काम करने में सक्षम बनाता है। ऐसे मामले में, ' आगत प्रवाह ” वर्ग प्रभाव में आता है जो निहित बाइट्स का विश्लेषण करने के साथ-साथ निर्दिष्ट फ़ाइल सामग्री को पढ़ने में सहायता करता है। इसके परिणामस्वरूप स्मृति समस्याओं का सामना करना पड़ता है और आवश्यकता के अनुसार चयनात्मक फ़ाइल सामग्री को कुशलतापूर्वक वापस करना पड़ता है।

यह राइट-अप जावा में 'इनपुटस्ट्रीम' के कार्य के बारे में विस्तार से बताएगा।







जावा इनपुटस्ट्रीम कैसे काम करता है?

'इनपुटस्ट्रीम' वर्ग ' java.io ”पैकेज एक सार सुपरक्लास से मेल खाता है जो निर्दिष्ट फ़ाइल के विरुद्ध बाइट्स वाली एक इनपुट स्ट्रीम देता है।



इनपुटस्ट्रीम के उपवर्ग

'इनपुटस्ट्रीम' कार्यक्षमताओं को लागू करने के लिए, इसके निम्नलिखित उपवर्गों का उपयोग किया जा सकता है:



    • FileInputStream
    • ऑब्जेक्ट इनपुटस्ट्रीम
    • ByteArrayInputStream

ऐसा है कि ये उपवर्ग 'इनपुटस्ट्रीम' वर्ग का विस्तार करते हैं।





इनपुटस्ट्रीम के तरीके

'इनपुटस्ट्रीम' वर्ग में विभिन्न विधियाँ होती हैं जो इसके उपवर्गों द्वारा लागू की जाती हैं। निम्नलिखित कुछ सबसे अधिक उपयोग की जाने वाली विधियाँ हैं:

तरीकों कार्यक्षमता
पढ़ना() यह इनपुट स्ट्रीम से डेटा का एक बाइट पढ़ता है।



पढ़ें (बाइट [] सरणी) यह स्ट्रीम से बाइट भी पढ़ता है और उन्हें लक्ष्य सरणी में संग्रहीत करता है।

छोडना() यह विधि इनपुट स्ट्रीम से बाइट्स की विशिष्ट संख्या को छोड़ देती है/छोड़ देती है।

उपलब्ध() यह इनपुट स्ट्रीम में निहित बाइट देता है।
रीसेट() यह उस स्ट्रीम पॉइंट तक पहुँच देता है जहाँ मार्क सेट किया गया था।

निशान() यह विधि स्ट्रीम में उस स्थिति को चिन्हित करती है जब तक डेटा पढ़ा गया है।

चिह्न समर्थित () यह विश्लेषण करता है कि क्या 'मार्क ()' और 'रीसेट ()' विधियां स्ट्रीम में समर्थित/संगत हैं।


उदाहरण पर जाने से पहले, 'इनपुटस्ट्रीम' और उसके उपवर्ग के साथ काम करने के लिए निम्नलिखित पैकेजों को आयात करें:

आयात java.io.FileInputStream;
आयात java.io.InputStream;


उदाहरण: जावा में इनपुटस्ट्रीम का कार्य करना

यह उदाहरण 'इनपुटस्ट्रीम' विधियों के माध्यम से फ़ाइल सामग्री को पढ़कर 'इनपुटस्ट्रीम' के कार्य को दिखाता है:

पब्लिक क्लास इनपुटस्ट्रीम {
सार्वजनिक स्थैतिक शून्य मुख्य ( स्ट्रिंग तर्क [ ] ) {
बाइट [ ] दिया गया सरणी = नया बाइट [ पचास ] ;
कोशिश {
इनपुटस्ट्रीम रीडडाटा = नया फाइलइनपुटस्ट्रीम ( 'readfile.txt' ) ;
System.out.println ( 'फ़ाइल में बाइट्स ->' + रीडडाटा.उपलब्ध ( ) ) ;
readData.read ( दिया गया सरणी ) ;
System.out.println ( 'फ़ाइल डेटा पढ़ें:' ) ;
स्ट्रिंग सम्‍मिलित डेटा = नया स्ट्रिंग ( दिया गया सरणी ) ;
System.out.println ( डेटा शामिल है ) ;
readData.close ( ) ;
}
पकड़ना ( अपवाद को छोड़कर ) {
getStackTrace को छोड़कर ( ) ;
}
} }


उपरोक्त कोड पंक्तियों के अनुसार, नीचे बताए गए चरणों का पालन करें:

    • सबसे पहले, एक 'बाइट' सरणी बनाएं जिसमें अधिकतम ' पचास 'पढ़ी गई फ़ाइल में बाइट मान।
    • अगले चरण में, एक 'बनाएँ आगत प्रवाह ''FileInputStream' का उपयोग करके और निर्दिष्ट फ़ाइल में उपलब्ध बाइट्स को संबंधित 'के माध्यम से वापस करें' उपलब्ध() ' तरीका।
    • उसके बाद, 'का उपयोग करके इनपुट स्ट्रीम से बाइट्स पढ़ें' पढ़ना() ' तरीका।
    • अब, बाइट सरणी को एक स्ट्रिंग में बदलें और फ़ाइल सामग्री प्रदर्शित करें।
    • अंत में, संबंधित 'का उपयोग करके पढ़ी गई फ़ाइल को बंद करें' बंद करना() ' तरीका।

उत्पादन


इस परिणाम में, यह निहित किया जा सकता है कि फ़ाइल में बाइट्स की संख्या यानी सामग्री द्वारा संचित स्थान को बाइट सरणी में अधिकतम सीमा के अनुसार लौटाया जाता है, अर्थात '50'। साथ ही, फ़ाइल सामग्री उचित रूप से लौटा दी जाती है।

फ़ाइल सामग्री


'का एक सिंहावलोकन प्राप्त करने के लिए छोडना() ' और ' रीसेट() ” विधियों में, निम्नलिखित प्रदर्शन पर विचार करें:


इस दृष्टांत में, 'स्किप ()' विधि बाइट्स की निर्दिष्ट संख्या को छोड़ देती है, अर्थात ' 5 -> जावा ” शुरू से फ़ाइल सामग्री से। हालांकि 'रीसेट ()' विधि स्ट्रीम को रीसेट करती है।

निष्कर्ष

' आगत प्रवाह 'की कक्षा' java.io ”पैकेज एक सार सुपरक्लास है जो फ़ाइल डेटा को पढ़ने के लिए उपयोग की जाने वाली बाइट्स की इनपुट स्ट्रीम से मेल खाता है। इस वर्ग में विभिन्न विधियाँ शामिल हैं जो आवश्यकता के अनुसार प्रभावी रूप से फ़ाइल की पठन पद्धतियों में सहायता करती हैं। इस ब्लॉग ने जावा में 'इनपुटस्ट्रीम' के उद्देश्य और कार्यप्रणाली का प्रदर्शन किया।