यह C++ में फाइल को लाइन दर लाइन पढ़ने का प्रोग्राम है।
इनपुट
tpoint.txt में प्रारंभिक सामग्री "Tutorials point." है
आउटपुट
Tutorials point.
एल्गोरिदम
शुरुआत
fstream क्लास के अगेंस्ट newfile ऑब्जेक्ट बनाएं
newfile ऑब्जेक्ट का उपयोग करके "tpoint.txt" फ़ाइल को लिखने के लिए open() मेथड कॉल करें
यदि फ़ाइल खुली है तो
tpoint.txt फ़ाइल में "Tutorials point" स्ट्रिंग डालें
close() मेथड का उपयोग करके फ़ाइल ऑब्जेक्ट newfile बंद करें
newfile ऑब्जेक्ट का उपयोग करके "tpoint.txt" फ़ाइल को पढ़ने के लिए open() मेथड कॉल करें
यदि फ़ाइल खुली है तो
"tp" स्ट्रिंग घोषित करें
getline() मेथड का उपयोग करके फ़ाइल ऑब्जेक्ट newfile का सारा डेटा पढ़ें और इसे स्ट्रिंग tp में डालें
स्ट्रिंग tp का डेटा प्रिंट करें
close() मेथड का उपयोग करके फ़ाइल ऑब्जेक्ट newfile बंद करें
समाप्ति
उदाहरण
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main() {
fstream newfile;
newfile.open("tpoint.txt", ios::out); // फाइल ऑब्जेक्ट का उपयोग करके लिखने के लिए फ़ाइल खोलें
if (newfile.is_open()) { // जांचें कि फ़ाइल खुली है या नहीं
newfile << "Tutorials point \n"; // टेक्स्ट डालना
newfile.close(); // फाइल ऑब्जेक्ट बंद करें
}
newfile.open("tpoint.txt", ios::in); // फाइल ऑब्जेक्ट का उपयोग करके पढ़ने के लिए फ़ाइल खोलें
if (newfile.is_open()) { // जांचें कि फ़ाइल खुली है या नहीं
string tp;
while (getline(newfile, tp)) { // फाइल ऑब्जेक्ट से डेटा पढ़ें और स्ट्रिंग में डालें
cout << tp << "\n"; // स्ट्रिंग का डेटा प्रिंट करें
}
newfile.close(); // फाइल ऑब्जेक्ट बंद करें
}
}
आउटपुट
Tutorials point.
मुख्य बिंदु
getline()लाइन दर लाइन पढ़ने के लिए सबसे अच्छा तरीका हैios::inमोड पढ़ने के लिए,ios::outलिखने के लिएis_open()से फ़ाइल खुली है या नहीं जांचेंwhile(getline(file, line))पैटर्न EOF तक पढ़ने के लिए मानक है
अन्य तरीके
// तरीका 2: string और getline के साथ
string line;
ifstream file("filename.txt");
while (getline(file, line)) {
cout << line << endl;
}
// तरीका 3: istreambuf_iterator (पूरी फ़ाइल एक बार में)
ifstream file("filename.txt");
string content((istreambuf_iterator<char>(file)), istreambuf_iterator<char>());