सी में फ़ाइल हैंडलिंग
प्रोग्रामिंग में, हमें कुछ विशिष्ट इनपुट डेटा की आवश्यकता हो सकती है ताकि कई बार उत्पन्न हो सकें। कभी -कभी, यह केवल कंसोल पर डेटा प्रदर्शित करने के लिए पर्याप्त नहीं है। प्रदर्शित किया जाने वाला डेटा बहुत बड़ा हो सकता है, और केवल सीमित मात्रा में डेटा कंसोल पर प्रदर्शित किया जा सकता है, और चूंकि मेमोरी अस्थिर है, इसलिए प्रोग्रामेटिक रूप से उत्पन्न डेटा को बार -बार पुनर्प्राप्त करना असंभव है। हालांकि, अगर हमें ऐसा करने की आवश्यकता है, तो हम इसे स्थानीय फ़ाइल सिस्टम पर संग्रहीत कर सकते हैं जो अस्थिर है और हर बार एक्सेस किया जा सकता है। यहाँ, सी में फ़ाइल हैंडलिंग की आवश्यकता आती है। C में फ़ाइल हैंडलिंग हमें हमारे C प्रोग्राम के माध्यम से स्थानीय फ़ाइल सिस्टम पर संग्रहीत फ़ाइलों को बनाने, अपडेट करने, पढ़ने और हटाने में सक्षम बनाती है। निम्नलिखित संचालन एक फ़ाइल पर किया जा सकता है। नई फ़ाइल का निर्माण एक मौजूदा फ़ाइल खोलना फ़ाइल से पढ़ना फ़ाइल को लिखना फ़ाइल को हटाना
फ़ाइल हैंडलिंग के लिए कार्य
फ़ाइल को खोलने, पढ़ने, लिखने, खोजने और बंद करने के लिए सी लाइब्रेरी में कई कार्य हैं। फ़ाइल फ़ंक्शंस की एक सूची नीचे दी गई है:
नहीं। फ़ंक्शन विवरण 1 pafaEZla_qaaelae () नई या मौजूदा फ़ाइल खोलता है 2 pafaEZla_laiqaiyae () फ़ाइल में डेटा लिखें 3 pafaEZla_pawe () फ़ाइल से डेटा पढ़ता है 4 pafaEZla_Axar_laiqaiyae () फ़ाइल में एक चरित्र लिखता है 5 pafaEZla_sae_Axar () फ़ाइल से एक वर्ण पढ़ता है 6 pafaEZla_baMD () फ़ाइल को बंद कर देता है 7 fsek () फ़ाइल सूचक को दिए गए स्थान पर सेट करता है 8 fputw () फाइल करने के लिए एक पूर्णांक लिखता है 9 fgetw () फ़ाइल से एक पूर्णांक पढ़ता है 10 फीट () वर्तमान स्थिति लौटाता है 11 रिवाइंड () फ़ाइल पॉइंटर को फ़ाइल की शुरुआत में सेट करता है
खोलना फ़ाइल: pafaEZla_qaaelae ()
हमें पढ़ने, लिखने या अपडेट करने से पहले एक फ़ाइल खोलनी होगी। FOPEN () फ़ंक्शन का उपयोग फ़ाइल को खोलने के लिए किया जाता है। Fopen () का सिंटैक्स नीचे दिया गया है।
pafaEla *pafaEZla_qaaelae( sYair Axar * pafaElaRkaRnaama, sYair Axar * tarika );
Fopen () फ़ंक्शन दो मापदंडों को स्वीकार करता है: फ़ाइल नाम (स्ट्रिंग)। यदि फ़ाइल किसी विशिष्ट स्थान पर संग्रहीत की जाती है, तो हमें उस पथ का उल्लेख करना चाहिए जिस पर फ़ाइल संग्रहीत है। उदाहरण के लिए, एक फ़ाइल नाम "c: //some_folder/some_file.ext" की तरह हो सकता है। वह मोड जिसमें फ़ाइल को खोला जाना है। यह एक स्ट्रिंग है। हम Fopen () फ़ंक्शन में निम्नलिखित मोड में से एक का उपयोग कर सकते हैं।
मोड विवरण R रीड मोड में एक टेक्स्ट फ़ाइल खोलता है W राइट मोड में एक टेक्स्ट फ़ाइल खोलता है एक परिशिष्ट मोड में एक पाठ फ़ाइल खोलता है R+ रीड एंड राइट मोड में एक टेक्स्ट फाइल खोलता है डब्ल्यू+ रीड एंड राइट मोड में एक टेक्स्ट फाइल खोलता है A+ रीड एंड राइट मोड में एक टेक्स्ट फाइल खोलता है RB रीड मोड में एक बाइनरी फ़ाइल खोलता है WB राइट मोड में एक बाइनरी फ़ाइल खोलता है AB परिशिष्ट मोड में एक बाइनरी फ़ाइल खोलता है RB+ रीड एंड राइट मोड में एक बाइनरी फ़ाइल खोलता है WB+ रीड एंड राइट मोड में एक बाइनरी फ़ाइल खोलता है AB+ रीड एंड राइट मोड में एक बाइनरी फ़ाइल खोलता है
फोपेन फ़ंक्शन निम्नलिखित तरीके से काम करता है। सबसे पहले, यह फ़ाइल को खोलने के लिए खोजता है। फिर, यह फ़ाइल को डिस्क से लोड करता है और इसे बफर में रखता है। बफर का उपयोग रीड ऑपरेशन के लिए दक्षता प्रदान करने के लिए किया जाता है। यह एक चरित्र सूचक स्थापित करता है जो फ़ाइल के पहले चरित्र को इंगित करता है। निम्न उदाहरण पर विचार करें जो राइट मोड में एक फ़ाइल खोलता है।
उदाहरण
#EZstamaalakre<PsaTidiAayaAae.Pca>
qaalai mauqya( )
{
pafaEla *Ppafpai ;
Axar caaIoari ;
Ppafpai = pafaEZla_qaaelae(" ipasamaRiMDksama.c","r") ;
jabatak ( 1 )
{
caaIoari = pafaEZla_sae_Axar ( Ppafpai ) ;
Agar ( caaIoari == EZAaePpaf )
raeke ;
laiqaiyae("%Axar",caaIoari) ;
}
pafaEZla_baMD (Ppafpai ) ;
}
आउटपुट
फ़ाइल की सामग्री मुद्रित की जाएगी।
#EZstamaalakre;
qaalai mauqya( )
{
pafaEla *Ppafpai; // pafaEla saucak
Axar caaIoari;
Ppafpai = pafaEZla_qaaelae(" ipasamaRiMDksama.c","r");
jabatak ( 1 )
{
caaIoari = pafaEZla_sae_Axar ( Ppafpai ); //pzatyaek cariOa ka pafaEla hI paW.naa AaIr saMgazhita maeM cariOa pafaEla.
Agar ( caaIoari == EZAaePpaf )
raeke;
laiqaiyae("%Axar",caaIoari);
}
pafaEZla_baMD (Ppafpai );
}
समापन फ़ाइल: pafaEZla_baMD ()
Fclose () फ़ंक्शन का उपयोग फ़ाइल को बंद करने के लिए किया जाता है। उस पर सभी ऑपरेशन करने के बाद फ़ाइल को बंद किया जाना चाहिए। Fclose () फ़ंक्शन का सिंटैक्स नीचे दिया गया है:
paunaZ pafaEZla_baMD( pafaEla *Ppafpai );