रैंडम एक्सेस फाइल फंक्शन्स
C में फाइल में रैंडम एक्सेस के लिए तीन मुख्य फंक्शन्स हैं:
- ftell(): फाइल पॉइंटर की वर्तमान स्थिति लौटाता है।
- rewind(): फाइल पॉइंटर को फाइल की शुरुआत में ले जाता है।
- fseek(): फाइल पॉइंटर को किसी विशेष स्थान पर ले जाता है।
ftell()
सिंटैक्स: int n = ftell(file_pointer);
यह फाइल में दर्ज कैरेक्टर्स की संख्या गिनने के लिए उपयोगी है।
rewind()
सिंटैक्स: rewind(file_pointer);
फाइल पॉइंटर को शुरुआत (पोजीशन 0) पर ले जाता है।
उदाहरण: rewind(fp); n = ftell(fp); printf("%d", n); // आउटपुट: 0
fseek()
सिंटैक्स: fseek(file_pointer, offset, position);
ऑफसेट (Offset)
- पढ़ते/लिखते समय कितनी पोजीशन मूव करना है।
- पॉजिटिव: आगे की दिशा।
- नेगेटिव: पीछे की दिशा।
पोजीशन (Position)
- 0: फाइल की शुरुआत (SEEK_SET)
- 1: वर्तमान स्थिति (SEEK_CUR)
- 2: फाइल का अंत (SEEK_END)
उदाहरण
fseek(fp, 0, 2): फाइल के अंत से 0 बाइट आगे (यानी अंत पर)fseek(fp, 0, 0): फाइल की शुरुआत से 0 बाइट आगे (यानी शुरुआत पर)fseek(fp, m, 0): शुरुआत से m बाइट आगेfseek(fp, -m, 2): अंत से m बाइट पीछे
fseek() में त्रुटियां
निम्न अमान्य हैं:
fseek(fp, -m, 0): शुरुआत से पीछे नहीं जा सकते।fseek(fp, +m, 2): अंत से आगे नहीं जा सकते।