شلون اكتب داخل flie من function في class في لغة الـc++؟
ساعد بالإجابة
"إن في قضاء حوائج الناس لذة لا يَعرفها إلا من جربها، فافعل الخير مهما استصغرته فإنك لا تدري أي حسنة تدخلك الجنة."
الإجابات (2)
يوجد في c++ ثلاث كلاسات للتعامل مع الملفات وهي
ofstream : وهي خاصة بالكتابة بالملفات
ifstream : وهي خاصة بقراءة الملفات
fstream : وهي تعمل عمل الكلاسين السابقين أي للقراءة والكتابة
مايلي مثال على الكتابة إلى ملف من خلال الكلاس ofstream
#include <iostream>
#include <ofstream>
#include <string>
using namespace std;
Class Writer{
public :
bool writeToFile(string filePath, string text){
ofstream myfile (filePath);
if (myfile.is_open())
{
myfile << text;
myfile.close();
return true;
}
return false;
}
};
الدالة writeToFile تقوم بإستقبال معاملين (2 Parameters)
filePaht : مسار الملف المراد الكتابة به
text : النص المراد كتابته في الملف
ثم تقوم بفتح الملف وتهيئته للقراءة من خلال التعليمة
ofstream myfile (filePath);
بعدها نتحقق من أن الملف المطلوب تم فتحه وهو جاهز للكتابة به من خلال الشرط
if(myfile.is_open())
إذا كان الملف جاهز سيتم كتابة النص المرسل للدالة بداخل الملف من خلال التعليمة
myfile << text;
ومن ثم إغلاقه وإرجاع true وهذا يعني أن الكتابة تمت بنجاح
myfile.close();
return true;
إذا لم يتمكن من فتح الملف لأي سبب كان لن يقوم بتحقيق الشرط وتطبيق ما بداخله وسوف يقوم مباشرة بإرجاع القيمة false;
الآن في الدالة main ما عليك إلا إنشاء متغير جديد من نوع writer وإرسال البيانات للدالة writeToFile ليقوم هو بالكتابة داخل الملف
int main () {
Writer writer;
if(writer.writeToFile("filename.txt","This is a test.")){
cout << "Done" << endl;
}
cout << "Unable to open file to write" << endl;
return 0;
}
بالتوفيق ان شاء الله
لايوجد لديك حساب في عالم البرمجة؟
تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !