يوضح هذا المقال كيفية استخدام الفئات `ifstream` و`getline` في لغة C++ لقراءة محتوى ملف نصي وعرضه على نافذة الكونسول.
يوضح المثال التالي كيفية قراءة محتوى ملف `demo.txt`، الذي تم إنشاؤه مسبقًا، ثم عرض محتواه ضمن نافذة الكونسول في البرنامج.
# include <iostream>
# include <fstream>
using namespace std;
int main () {
// هنا قمنا بإنشاء كائن من الكلاس ifstream إسمه infile لأننا سنستخدمه لقراءة محتوى ملف موجود في الحاسوب
ifstream infile;
// هنا قمنا باستدعاء الدالة open() لفتح الملف "demo.txt"
infile.open ( "demo.txt" );
// هنا قمنا بالتأكد من أن الإتصال بالملف الذي يشير له الكائن infile لا يوجد فيه أي مشاكل قبل التعامل معه
if (infile) {
// سنستخدم هذا المتغير لتخزين كل سطر جديد نقوم بجلبه من الملف فيه بشكل مؤقت قبل عرضه
string line;
// هنا في كل دورة من دورات الحلقة while طالما أن الدالة getline() تجد سطر جديد, ستقوم بوضعه بشكل مؤقت في المتغير line
while ( getline (infile, line)) {
// بعدها سنقوم بعرضه و النزول على سطر جديد حتى لا يظهر كل محتوى الملف على سطر واحد
cout << line << endl;
}
}
// هنا قمنا باستدعاء الدالة close() من الكائن infile لإغلاق الإتصال مع الملف المفتوح في الذاكرة
infile.close ();
return 0 ;
}
عند تنفيذ البرنامج، سيُعرض محتوى الملف `demo.txt` على نافذة الكونسول كما يلي:
This is a line. This is another line.