C ++ में फ़्रीओपेन () फ़ंक्शन एक नई फ़ाइल को एक फ़ाइल स्ट्रीम के साथ खोलने की कोशिश करता है जो किसी अन्य ओपन की गई फ़ाइल के साथ जुड़ा हुआ है।
फ़्रीओपेन () फ़ंक्शन हेडर फ़ाइल में परिभाषित किया गया है।
freopen () प्रोटोटाइप
File * freopen (const char * filename, const char * मोड, FILE * स्ट्रीम);
फ्रीपेन फ़ंक्शन पहले स्ट्रीम का उपयोग करके खोली गई फ़ाइल को बंद करने का प्रयास करता है। फ़ाइल बंद होने के बाद, यह तर्क मोड द्वारा निर्दिष्ट मोड में तर्क फ़ाइल नाम (यदि यह शून्य नहीं है) द्वारा निर्दिष्ट फ़ाइल नाम को खोलने का प्रयास करता है। अंत में यह फाइल को फाइल स्ट्रीम स्ट्रीम के साथ जोड़ता है।
यदि फ़ाइल नाम एक शून्य सूचक है, तो फ़्रीओपेन () फ़ंक्शन फ़ाइल को फिर से खोलने का प्रयास करता है जो पहले से ही स्ट्रीम से जुड़ा हुआ है।
freopen () पैरामीटर
- फ़ाइल नाम: नई फ़ाइल खोलने के लिए।
- मोड: फ़ाइल को खोलने के लिए मोड। विभिन्न प्रकार की फ़ाइल एक्सेस मोड इस प्रकार हैं:
फ़ाइल एक्सेस मोड | व्याख्या | यदि फ़ाइल मौजूद है | यदि फ़ाइल मौजूद नहीं है |
---|---|---|---|
"आर" | फ़ाइल को रीड मोड में खोलता है | शुरू से पढ़ें | त्रुटि |
"w" | फ़ाइल को लिखित मोड में खोलता है | सभी सामग्री मिटा दें | नई फ़ाइल बनाएँ |
"ए" | फ़ाइल को परिशिष्ट मोड में खोलता है | लिखना शुरू से अंत तक | नई फ़ाइल बनाएँ |
"आर +" | फाइल को रीड एंड राइट मोड में खोलता है | शुरू से पढ़ें | त्रुटि |
"w +" | फाइल को रीड एंड राइट मोड में खोलता है | सभी सामग्री मिटा दें | नई फ़ाइल बनाएँ |
"ए +" | फाइल को रीड एंड राइट मोड में खोलता है | लिखना शुरू से अंत तक | नई फ़ाइल बनाएँ |
- स्ट्रीम: फ़ाइल नाम को एसोसिएट करने के लिए फाइल स्ट्रीम।
freopen () रिटर्न वैल्यू
फ्रोपेन () फ़ंक्शन रिटर्न:
- सफलता पर धारा।
- विफलता पर NULL।
उदाहरण: फ़्रीओपेन () फ़ंक्शन कैसे काम करता है?
#include #include int main() ( FILE* fp = fopen("test1.txt","w"); fprintf(fp,"%s","This is written to test1.txt"); if (freopen("test2.txt","w",fp)) fprintf(fp,"%s","This is written to test2.txt"); else ( printf("freopen failed"); exit(1); ) fclose(fp); return 0; )
जब आप कार्यक्रम चलाते हैं:
निम्नलिखित test1.txt को लिखा जाएगा: यह test1.txt को लिखा गया है । निम्नलिखित test2.txt को लिखा जाएगा: यह test2.txt को लिखा गया है