SlideShare a Scribd company logo
1 of 22
‫املحاضرة‬‫الثامنة‬
‫امللفات‬
ghadeer-al-hasan ghadeer.al.hasan.95@gamil.com
‫إعداد‬:‫م‬.‫الحسن‬ ‫غدير‬
‫املتطايرة‬ ‫الذاكرة‬ ‫يف‬ ‫ستخزن‬ ‫واليت‬ ‫املتحوالت‬ ‫يف‬ ‫البياانت‬ ‫خنزن‬ ‫برانمج‬ ‫كتابة‬‫عند‬RAM‫تنفيذ‬ ‫من‬ ‫االنتهاء‬ ‫وعند‬ ،،‫الربانمج‬
‫هذه‬ ‫من‬ ‫املتحوالت‬ ‫تتحرر‬‫املواقع‬‫القيم‬ ‫وتضيع‬.
‫هلا‬ ‫الوصول‬ ‫نستطيع‬ ‫حيث‬ ‫الدائمة‬ ‫الذاكرة‬ ‫يف‬ ‫القيم‬ ‫هذه‬ ‫ين‬‫ز‬‫خت‬ ‫إىل‬ ‫حنتاج‬ ‫األحيان‬ ‫من‬ ‫الكثري‬ ‫يف‬‫يف‬‫أي‬‫وقت‬‫وهنا‬‫احلاجة‬ ‫وجدت‬
‫إىل‬ ‫البداية‬ ‫يف‬،‫امللفات‬‫متعدد‬ ‫بصيغ‬ ‫امللفات‬ ‫وحفظ‬ ‫عليها‬ ‫البياانت‬ ‫كتابة‬‫على‬ ‫القدرة‬ ‫تعطي‬ ‫حيث‬‫الدائمة‬ ‫الذاكرة‬ ‫يف‬ ‫ة‬.
‫مقدمة‬
1
‫البت‬:‫قيمة‬ ‫أتخذ‬ ‫ثنائية‬ ‫خلية‬ ‫هو‬‫إما‬‫بت‬ ‫شكل‬ ‫على‬ ‫ميثل‬ ‫النهاية‬ ‫يف‬ ‫احلاسوب‬ ‫داخل‬ ‫شي‬ ‫كل‬، ‫واحد‬ ‫أو‬ ‫صفر‬‫ات‬.
‫البايت‬:‫من‬ ‫مؤلف‬8‫بتات‬.
‫احلقل‬:‫نفسه‬ ‫للشيء‬ ‫تعود‬ ‫املعىن‬ ‫بنفس‬ ‫احملارف‬ ‫من‬ ‫جمموعة‬(‫مثال‬:‫األول‬ ‫االسم‬.)
‫السجل‬:‫كلية‬‫يف‬ ‫طالب‬ ‫بياانت‬ ‫أو‬ ‫كة‬‫شر‬ ‫يف‬ ‫موظف‬ ‫بياانت‬ ، ‫الواقع‬ ‫يف‬ ‫ما‬ ‫كائن‬‫متثل‬ ‫احلقول‬ ‫من‬ ‫جمموعة‬.
‫امللف‬:‫حسب‬ ‫البياانت‬ ‫ختزن‬ ‫التسلسلية‬ ‫امللفات‬ ‫يف‬ ، ‫السجالت‬ ‫من‬ ‫جمموعة‬‫املفتاح‬.
‫قواعد‬‫البياانت‬:‫من‬ ‫جمموعة‬‫امللفات‬.
‫البياانت‬ ‫تنظيم‬ ‫هرمية‬
2
‫مؤ‬ ‫وصول‬ ‫حتدد‬ ‫واليت‬ ‫امللف‬ ‫هناية‬ ‫بعالمة‬ ‫تنتهي‬ ‫البايتات‬ ‫من‬ ‫سلسلة‬ ‫أنه‬ ‫على‬ ‫امللف‬ ‫مع‬ ‫اللغة‬ ‫تتعامل‬‫لنهايته‬ ‫امللف‬ ‫شر‬.
‫عندما‬‫امللف‬ ‫الربانمج‬ ‫يفتح‬‫تبط‬‫ر‬‫م‬ ‫وجمرى‬ ‫غرض‬ ‫ينشأ‬ ‫فأنه‬‫به‬.
‫والربانمج‬ ‫امللف‬ ‫بني‬ ‫اتصال‬ ‫أداة‬ ‫هو‬ ‫واجملرى‬(‫امللف‬ ‫إىل‬ ‫واخلرج‬ ‫الدخل‬ ‫لتوجيه‬.)
‫املكتبة‬ ‫إىل‬ ‫حنتاج‬ ‫امللفات‬ ‫مع‬ ‫التعامل‬ ‫عند‬<fstream>
‫اجملاري‬ ‫مع‬ ‫للتعامل‬ ‫أشكال‬ ‫ثالثة‬ ‫وتقدم‬:
Ifstream:‫اءة‬‫ر‬‫ق‬ ‫جمرى‬‫فقط‬.
Ofstream:‫كتابة‬‫جمرى‬‫فقط‬.
Fstream:‫اءة‬‫ر‬‫ق‬ ‫جمرى‬‫كتابة‬‫و‬.
‫والقنوات‬ ‫امللفات‬
3
‫امللفات‬ ‫مع‬ ‫السجالت‬ ‫نستخدم‬ ‫ما‬ ً‫ا‬‫غالب‬.
‫امللف‬ ‫بنية‬ ‫حتديد‬ ‫على‬ ‫السجل‬ ‫يساعد‬.
‫امللف‬ ‫أسطر‬ ‫يف‬ ‫سجل‬ ‫نكتب‬.
‫والكتابة‬ ‫اءة‬‫ر‬‫الق‬ ‫عمليات‬ ‫السجالت‬ ‫تسهل‬.
‫والقنوات‬ ‫امللفات‬
4
‫متسلسل‬ ‫بشكل‬ ،‫به‬ ‫الكتابة‬ ‫متت‬ ‫اليت‬ ‫تيب‬‫رت‬‫ال‬ ‫بنفس‬ ‫البياانت‬ ‫أ‬‫ر‬‫تق‬.
‫امللف‬ ‫منتصف‬ ‫يف‬ ‫سجل‬ ‫إضافة‬ ‫ميكن‬ ‫ال‬.
‫امللف‬ ‫من‬ ‫مباشر‬ ‫بشكل‬ ‫سجل‬ ‫حذف‬ ‫ميكن‬ ‫ال‬.
‫امللف‬ ‫من‬ ‫مباشر‬ ‫بشكل‬ ‫سجل‬ ‫من‬ ‫حقل‬ ‫أو‬ ‫سجل‬ ‫تعديل‬ ‫ميكن‬ ‫ال‬.
‫التسلسلي‬ ‫الوصول‬ ‫ملفات‬
5
‫امللف‬ ‫على‬ ‫كتابة‬‫قناة‬ ‫إنشاء‬.
‫عليه‬ ‫والكتابة‬ ‫امللف‬ ‫مع‬ ‫التعامل‬ ‫القناة‬ ‫هذه‬ ‫مهمة‬.
‫اسم‬ ‫إبعطاء‬ ً‫ا‬‫دائم‬ ‫أوصي‬fout‫للقناة‬
‫التسلسلية‬ ‫امللفات‬ ‫على‬ ‫الكتابة‬
6
ofstream fout(“filePath”, fileOpenMode)
‫امللف‬ ‫فتح‬ ‫أمناط‬:
•ios::app:ً‫ا‬‫مسبق‬ ‫املوجودة‬ ‫البياانت‬ ‫على‬ ‫واحلفاظ‬ ،‫امللف‬ ‫هناية‬ ‫يف‬ ‫الكتابة‬.
•ios::ate:‫منه‬ ‫مكان‬ ‫أي‬ ‫يف‬ ‫الكتابة‬ ‫إمكانية‬ ‫مع‬ ‫املفتوح‬ ‫امللف‬ ‫هناية‬ ‫إىل‬ ‫التحرك‬.
•ios::in:‫للدخل‬ ‫أنه‬ ‫على‬ ‫امللف‬ ‫فتح‬(‫اءة‬‫ر‬‫ق‬)‫فقط‬.
•ios::out:‫للخرج‬ ‫أنه‬ ‫على‬ ‫امللف‬ ‫فتح‬(‫كتابة‬)‫فقط‬.
•ios::trunc:‫للخرج‬ ‫االسم‬ ‫بنفس‬ ‫ملف‬ ‫واستخدام‬ ً‫ا‬‫موجود‬ ‫كان‬‫إذا‬ ‫امللف‬ ‫حذف‬.
‫امللف‬ ‫على‬ ‫اج‬‫ر‬‫اإلخ‬(‫امللف‬ ‫على‬ ‫الكتابة‬ ‫هي‬)‫على‬ ‫الربانمج‬ ‫من‬ ‫البياانت‬ ‫اج‬‫ر‬‫إخ‬ ‫عملية‬ ‫وهي‬‫امللف‬.
‫امللف‬ ‫من‬ ‫اإلدخال‬(‫امللف‬ ‫من‬ ‫اءة‬‫ر‬‫الق‬ ‫هي‬)‫الربانمج‬ ‫إىل‬ ‫امللف‬ ‫من‬ ‫البياانت‬ ‫إدخال‬ ‫عملية‬ ‫وهي‬.
‫النمط‬ ‫أيخذ‬ ً‫ا‬‫اضي‬‫رت‬‫اف‬ ‫فأنه‬ ‫امللف‬ ‫فتح‬ ‫نوع‬ ‫حتديد‬ ‫عدم‬ ‫عند‬ios::out.
ً‫ال‬‫مث‬ ،‫ملف‬ ‫مع‬ ‫قناة‬ ‫فتح‬ ‫عن‬ ‫خطأ‬ ‫حيدث‬ ‫أن‬ ‫ميكن‬:‫أ‬ ،‫الكتابة‬ ‫أو‬ ‫اءة‬‫ر‬‫للق‬ ‫قابل‬ ‫غري‬ ‫امللف‬ ،‫موجود‬ ‫غري‬ ‫امللف‬‫أذوانت‬ ‫مشكلة‬ ‫و‬.
‫مالحظات‬
7
‫كتابة‬‫قناة‬ ‫إنشاء‬ ‫عن‬ ‫مثال‬
8
‫قناة‬ ‫إنشاء‬‫على‬ ‫اءة‬‫ر‬‫ق‬‫امللف‬.
‫مع‬ ‫التعامل‬ ‫القناة‬ ‫هذه‬ ‫مهمة‬‫منه‬ ‫اءة‬‫ر‬‫للق‬ ‫امللف‬.
‫اسم‬ ‫إبعطاء‬ ً‫ا‬‫دائم‬ ‫أوصي‬fin‫للقناة‬
‫التسلسلية‬ ‫امللفات‬ ‫من‬ ‫اءة‬‫ر‬‫الق‬
9
Ifstream fin(“filePath”, ios::in)
‫امللف‬ ‫لنهاية‬ ‫الوصول‬ ‫عند‬eof()‫ل‬ ً‫ة‬‫مشري‬ ‫صفر‬ ‫قيمة‬ ‫وتعيد‬ ‫القناة‬ ‫تتوقف‬‫هناية‬ ‫إىل‬ ‫لوصول‬‫امللف‬.
‫التايل‬ ‫البايت‬ ‫اءة‬‫ر‬‫لق‬ ‫املؤشر‬ ‫ينتقل‬ ‫ابيت‬ ‫اءة‬‫ر‬‫ق‬ ‫عند‬.
‫قناة‬ ‫إنشاء‬ ‫عن‬ ‫مثال‬‫اءة‬‫ر‬‫ق‬
10
‫مؤشر‬ ‫مبوقع‬ ‫حتكم‬ ‫عمليات‬ ‫يوجد‬،‫امللف‬‫ولك‬ ‫معينة‬ ‫ألماكن‬ ‫للوصول‬ ‫تساعدان‬ ‫نفسها‬ ‫املكتبة‬ ‫من‬ ‫مقدمة‬ ‫وهي‬‫معرفة‬ ‫غري‬ ‫من‬ ‫ن‬
‫احلايل‬ ‫املوقع‬ ‫يف‬ ‫نة‬‫ز‬‫املخ‬ ‫البياانت‬ ‫قيمة‬.
•ios::beg:‫لبداية‬ ‫الوصول‬‫امللف‬.
•ios::cur:‫املوقع‬ ‫عن‬ ‫تعرب‬‫احلايل‬.
•ios::end:‫آلخر‬ ‫الوصول‬‫امللف‬.
‫ومها‬ ‫ابلقناة‬ ‫تبط‬‫ر‬‫امل‬ ‫امللف‬ ‫يف‬ ‫املؤشر‬ ‫متوضع‬ ‫إلعادة‬ ‫اتبعني‬ ‫يوجد‬:
•Seekg‫اءة‬‫ر‬‫الق‬ ‫قناة‬ ‫أجل‬ ‫من‬
•Seekp‫الكتابة‬ ‫قناة‬ ‫أجل‬ ‫من‬
‫املطلوب‬ ‫املكان‬ ‫إىل‬ ‫املؤشر‬ ‫احة‬‫ز‬‫إب‬ ‫يقومان‬ ‫حيث‬.
‫ملعرفة‬‫التابع‬ ‫يوجد‬ ‫املؤشر‬ ‫موقع‬tellg()‫احلايل‬ ‫املؤشر‬ ‫موقع‬ ‫لنا‬ ‫يعيد‬(‫ابلبايتات‬ ‫املعادة‬ ‫القيمة‬)
‫املؤشر‬ ‫مبوضع‬ ‫التحكم‬ ‫عمليات‬
11
‫تتضمن‬ ‫ائية‬‫ر‬‫ش‬ ‫فاتورة‬ ‫لدينا‬N‫خالل‬ ‫من‬ ‫منتج‬ ‫كل‬‫يعرف‬ ‫حبيث‬ ‫منتج‬(‫رقم‬–‫اسم‬–‫اة‬‫ر‬‫املتش‬ ‫الوحدة‬ ‫سعر‬–‫الوحدات‬ ‫عدد‬–
‫اإلمجايل‬ ‫السعر‬)‫التالية‬ ‫التوابع‬ ‫يتضمن‬ ‫برانمج‬ ‫بكتابة‬ ‫السجالت‬ ‫مفهوم‬ ‫استخدم‬ ،:
•‫تسلسلي‬ ‫ملف‬ ‫ضمن‬ ‫فاتورة‬ ‫بياانت‬ ‫لكتابة‬ ‫اتبع‬.
•‫التسلسلي‬ ‫امللف‬ ‫حمتوايت‬ ‫لطباعة‬ ‫اتبع‬.
•‫اسم‬ ‫حتديد‬ ‫خالل‬ ‫من‬ ‫منتجات‬ ‫ألحد‬ ‫الوحدة‬ ‫سعر‬ ‫لتعديل‬ ‫اتبع‬‫املنتج‬.
•‫تسلسلي‬ ‫ملف‬ ‫إىل‬ ‫السابق‬ ‫امللف‬ ‫من‬ ‫منتج‬ ‫لكل‬ ‫اإلمجايل‬ ‫والسعر‬ ‫االسم‬ ‫لنسخ‬ ‫اتبع‬‫جديد‬.
•‫وطباعة‬ ‫رقمه‬ ‫خالل‬ ‫من‬ ‫منتج‬ ‫بياانت‬ ‫عن‬ ‫للبحث‬ ‫اتبع‬‫بياانته‬.
•‫السابقة‬ ‫التوابع‬ ‫مجيع‬ ‫يستدعي‬ ‫الذي‬ ‫ئيسي‬‫ر‬‫ال‬ ‫التابع‬.
‫التسلسلية‬ ‫امللفات‬ ‫عن‬ ‫مثال‬ 12
‫التسلسلية‬ ‫امللفات‬ ‫عن‬ ‫مثال‬
13
‫رقم‬ ‫معرفة‬ ‫مبجرد‬ ‫يده‬‫ر‬‫ن‬ ‫الذي‬ ‫للعنصر‬ ‫الوصول‬‫سطره‬.
‫أم‬ ‫املطلوب‬ ‫العنصر‬ ‫هو‬ ‫هل‬ ‫واختبار‬ ‫امللف‬ ‫سجالت‬ ‫كامل‬‫على‬ ‫للمرور‬ ‫داعي‬ ‫وال‬‫ال‬.
‫الذي‬ ‫السطر‬ ‫يف‬ ً‫ة‬‫مباشر‬ ‫ما‬ ‫سجل‬ ‫إدخال‬‫يده‬‫ر‬‫ن‬.
‫امللف‬ ‫بنية‬ ‫يب‬‫ر‬‫خت‬ ‫بدون‬ ً‫ة‬‫مباشر‬ ‫سجل‬ ‫وتعديل‬ ‫حذف‬‫األصلي‬.
‫الوصول‬ ‫ملفات‬‫العشوائي‬ 14
‫ال‬ ‫فقط‬ ‫ابلسطر‬ ‫واحد‬ ‫سجل‬ ‫نكتب‬ ‫حنن‬‫غري‬.
‫حجمه‬ ‫والسجل‬‫اثبت‬.
‫السجل‬ ‫حجم‬ ً‫ا‬‫علم‬ ،‫األول‬ ‫السطر‬ ‫موقع‬ ‫ماهو‬100‫ابيت؟‬
•‫صفر‬ ‫هو‬ ‫األول‬ ‫السطر‬ ‫دليل‬*100(‫السجل‬ ‫حجم‬= )0
‫السجل‬ ‫حجم‬ ً‫ا‬‫علم‬ ،‫اخلامس‬ ‫السطر‬ ‫موقع‬ ‫ماهو‬100‫ابيت؟‬
•‫هو‬ ‫اخلامس‬ ‫السطر‬ ‫دليل‬4*100(‫السجل‬ ‫حجم‬= )400(‫اخلامس‬ ‫السطر‬ ‫بداية‬ ‫يف‬ ‫يقف‬ ‫املؤشر‬)
‫تذكر‬
15
‫عشوائي‬ ‫ملف‬ ‫على‬ ‫والكتابة‬ ‫اءة‬‫ر‬‫للق‬ ‫واحدة‬ ‫قناة‬ ‫حنتاج‬.
‫عشوائي‬ ‫وصول‬ ‫ذو‬ ‫جاهز‬ ‫كتابة‬‫و‬ ‫اءة‬‫ر‬‫ق‬ ‫اتبع‬ ‫يوجد‬
‫امللف‬ ‫مع‬ ‫اتصال‬ ‫قناة‬ ‫إلنشاء‬:
‫عشوائي‬ ‫ملف‬ ‫مع‬ ‫اتصال‬ ‫قناة‬ ‫إنشاء‬
16
fstream f ("student.data",ios::out | ios :: in | ios::bin);
‫عشوائي‬ ‫ملف‬ ‫من‬ ‫اءة‬‫ر‬‫والق‬ ‫الكتابة‬
17
f.seekp( pos_type );
//f.seekp((number - 1) * sizeof(struct));
f.write(const char *, size);
f.seekg ( pos_type );
//f.seekg((number - 1) * sizeof(struct));
f.read( (char*) &s2, size);
‫عشوائي‬ ‫ملف‬ ‫على‬ ‫الكتابة‬ ‫مثال‬ 18
‫ـ‬‫ب‬ ‫بون‬‫ز‬ ‫كل‬‫يعرف‬ ‫حيث‬ ‫ما‬ ‫بنك‬ ‫زابئن‬ ‫بياانت‬ ‫لدينا‬(‫رقم‬–‫اسم‬–‫كنية‬–‫رصيد‬)‫يت‬ ‫برانمج‬ ‫كتابة‬‫واملطلوب‬‫التالية‬ ‫التوابع‬ ‫ضمن‬:
‫املستخدم‬ ‫خيار‬ ‫وإدخال‬ ‫ات‬‫ر‬‫اخليا‬ ‫لطباعة‬ ‫اتبع‬.
‫الرقم‬ ‫حسب‬ ‫تبة‬‫ر‬‫م‬ ‫عشوائي‬ ‫ملف‬ ‫إىل‬ ‫بون‬‫ز‬ ‫بياانت‬ ‫إلضافة‬ ‫اتبع‬.
‫الشاشة‬ ‫على‬ ‫وطباعتها‬ ‫رقمه‬ ‫معرفة‬ ‫خالل‬ ‫من‬ ‫العشوائي‬ ‫امللف‬ ‫من‬ ‫ما‬ ‫بون‬‫ز‬ ‫بياانت‬ ‫اءة‬‫ر‬‫لق‬ ‫اتبع‬.
‫رقمه‬ ‫معرفة‬ ‫خالل‬ ‫من‬ ‫السابق‬ ‫امللف‬ ‫يف‬ ‫نقصان‬ ‫أو‬ ‫زايدة‬ ‫ما‬ ‫بون‬‫ز‬ ‫رصيد‬ ‫لتعديل‬ ‫اتبع‬.
‫حسب‬ ‫بون‬‫ز‬ ‫بياانت‬ ‫حلذف‬ ‫اتبع‬‫رقمه‬.
‫أخر‬ ‫تسلسلي‬ ‫ملف‬ ‫إىل‬ ‫العشوائي‬ ‫امللف‬ ‫بياانت‬ ‫لنسخ‬ ‫اتبع‬.
‫للمستخدم‬ ‫نوضحها‬ ‫اختيار‬ ‫بنية‬ ‫ضمن‬ ‫ئيسي‬‫ر‬‫ال‬ ‫التابع‬ ‫ضمن‬ ‫السابقة‬ ‫التوابع‬ ‫استدعاء‬(‫ب‬ ‫اتبع‬ ‫كل‬‫الشاشة‬ ‫على‬ ‫رقم‬.)
‫امللفات‬ ‫عن‬ ‫مثال‬‫العشوائية‬ 19
‫العشوائية‬ ‫امللفات‬ ‫عن‬ ‫مثال‬
20
‫انتهت‬
‫املحاضرة‬‫الثامنة‬
ghadeer-al-hasan ghadeer.al.hasan.95@gamil.com

More Related Content

Similar to [C++ Tutorial] #8 Files

[C++ Tutorial] #6- Pointers
[C++ Tutorial] #6- Pointers [C++ Tutorial] #6- Pointers
[C++ Tutorial] #6- Pointers Ghadeer AlHasan
 
ماهية برنامج الإكسيل
ماهية برنامج الإكسيلماهية برنامج الإكسيل
ماهية برنامج الإكسيلHanaa Ahmed
 
اهم ماكتب محمد ابوسامرة
اهم ماكتب محمد ابوسامرةاهم ماكتب محمد ابوسامرة
اهم ماكتب محمد ابوسامرةMahgoub Mergani
 
شرح برنامج الاكسيل الصف الثانى الاعدادى
شرح برنامج الاكسيل الصف الثانى الاعدادىشرح برنامج الاكسيل الصف الثانى الاعدادى
شرح برنامج الاكسيل الصف الثانى الاعدادىHanaa Ahmed
 
عرض العمليات الحسابية والمنطقية
عرض العمليات الحسابية والمنطقيةعرض العمليات الحسابية والمنطقية
عرض العمليات الحسابية والمنطقيةhessah_8s
 
عملية الكتابة علي ملف
عملية الكتابة علي ملفعملية الكتابة علي ملف
عملية الكتابة علي ملفHaytham Malek
 
برنامج اكسل من سيف الزعبي
برنامج اكسل من سيف الزعبيبرنامج اكسل من سيف الزعبي
برنامج اكسل من سيف الزعبيSaif Alzoubi
 

Similar to [C++ Tutorial] #8 Files (11)

[C++ Tutorial] #6- Pointers
[C++ Tutorial] #6- Pointers [C++ Tutorial] #6- Pointers
[C++ Tutorial] #6- Pointers
 
1- Languages Basics
1- Languages Basics1- Languages Basics
1- Languages Basics
 
ماهية برنامج الإكسيل
ماهية برنامج الإكسيلماهية برنامج الإكسيل
ماهية برنامج الإكسيل
 
اهم ماكتب محمد ابوسامرة
اهم ماكتب محمد ابوسامرةاهم ماكتب محمد ابوسامرة
اهم ماكتب محمد ابوسامرة
 
شرح برنامج الاكسيل الصف الثانى الاعدادى
شرح برنامج الاكسيل الصف الثانى الاعدادىشرح برنامج الاكسيل الصف الثانى الاعدادى
شرح برنامج الاكسيل الصف الثانى الاعدادى
 
PowerPoint.ppt
PowerPoint.pptPowerPoint.ppt
PowerPoint.ppt
 
4- Arrays
4-  Arrays4-  Arrays
4- Arrays
 
عرض العمليات الحسابية والمنطقية
عرض العمليات الحسابية والمنطقيةعرض العمليات الحسابية والمنطقية
عرض العمليات الحسابية والمنطقية
 
word.ppt
word.pptword.ppt
word.ppt
 
عملية الكتابة علي ملف
عملية الكتابة علي ملفعملية الكتابة علي ملف
عملية الكتابة علي ملف
 
برنامج اكسل من سيف الزعبي
برنامج اكسل من سيف الزعبيبرنامج اكسل من سيف الزعبي
برنامج اكسل من سيف الزعبي
 

More from Ghadeer AlHasan

[C++ Tutorial] #7- Linked List
[C++ Tutorial] #7- Linked List[C++ Tutorial] #7- Linked List
[C++ Tutorial] #7- Linked ListGhadeer AlHasan
 
[Java] #8 String and Inner Class
[Java] #8 String and Inner Class[Java] #8 String and Inner Class
[Java] #8 String and Inner ClassGhadeer AlHasan
 
[Java] #7 - Input & Output Stream
[Java] #7 - Input & Output Stream[Java] #7 - Input & Output Stream
[Java] #7 - Input & Output StreamGhadeer AlHasan
 
#6- Arrays and Collections Framework
#6- Arrays and Collections Framework#6- Arrays and Collections Framework
#6- Arrays and Collections FrameworkGhadeer AlHasan
 
5- Overriding and Abstraction In Java
5- Overriding and Abstraction In Java5- Overriding and Abstraction In Java
5- Overriding and Abstraction In JavaGhadeer AlHasan
 
4- Inheritance, Aggregation, Encapsulation and Overloading
4- Inheritance, Aggregation, Encapsulation and Overloading4- Inheritance, Aggregation, Encapsulation and Overloading
4- Inheritance, Aggregation, Encapsulation and OverloadingGhadeer AlHasan
 
2- Introduction to java II
2-  Introduction to java II2-  Introduction to java II
2- Introduction to java IIGhadeer AlHasan
 
#8 (Java Message Service)
#8 (Java Message Service)#8 (Java Message Service)
#8 (Java Message Service)Ghadeer AlHasan
 
#7 (Java Message Service)
#7 (Java Message Service)#7 (Java Message Service)
#7 (Java Message Service)Ghadeer AlHasan
 
#6 (RESTtful Web Wervices)
#6 (RESTtful Web Wervices)#6 (RESTtful Web Wervices)
#6 (RESTtful Web Wervices)Ghadeer AlHasan
 
#5 (Remote Method Invocation)
#5 (Remote Method Invocation)#5 (Remote Method Invocation)
#5 (Remote Method Invocation)Ghadeer AlHasan
 
#4 (Remote Method Invocation)
#4 (Remote Method Invocation)#4 (Remote Method Invocation)
#4 (Remote Method Invocation)Ghadeer AlHasan
 
#3 (Multi Threads With TCP)
#3 (Multi Threads With TCP)#3 (Multi Threads With TCP)
#3 (Multi Threads With TCP)Ghadeer AlHasan
 

More from Ghadeer AlHasan (20)

[C++ Tutorial] #7- Linked List
[C++ Tutorial] #7- Linked List[C++ Tutorial] #7- Linked List
[C++ Tutorial] #7- Linked List
 
[Java] #8 String and Inner Class
[Java] #8 String and Inner Class[Java] #8 String and Inner Class
[Java] #8 String and Inner Class
 
[Java] #7 - Input & Output Stream
[Java] #7 - Input & Output Stream[Java] #7 - Input & Output Stream
[Java] #7 - Input & Output Stream
 
[C++] #5 - Structures
[C++] #5 - Structures[C++] #5 - Structures
[C++] #5 - Structures
 
#6- Arrays and Collections Framework
#6- Arrays and Collections Framework#6- Arrays and Collections Framework
#6- Arrays and Collections Framework
 
5- Overriding and Abstraction In Java
5- Overriding and Abstraction In Java5- Overriding and Abstraction In Java
5- Overriding and Abstraction In Java
 
4- Inheritance, Aggregation, Encapsulation and Overloading
4- Inheritance, Aggregation, Encapsulation and Overloading4- Inheritance, Aggregation, Encapsulation and Overloading
4- Inheritance, Aggregation, Encapsulation and Overloading
 
3- Operators in Java
3- Operators in Java3- Operators in Java
3- Operators in Java
 
2- Introduction to java II
2-  Introduction to java II2-  Introduction to java II
2- Introduction to java II
 
1- Introduction to java
1- Introduction to java1- Introduction to java
1- Introduction to java
 
0- Overview
0- Overview0- Overview
0- Overview
 
3- Functions
3-  Functions3-  Functions
3- Functions
 
2- Control Structures
2-  Control Structures2-  Control Structures
2- Control Structures
 
#8 (Java Message Service)
#8 (Java Message Service)#8 (Java Message Service)
#8 (Java Message Service)
 
#7 (Java Message Service)
#7 (Java Message Service)#7 (Java Message Service)
#7 (Java Message Service)
 
#6 (RESTtful Web Wervices)
#6 (RESTtful Web Wervices)#6 (RESTtful Web Wervices)
#6 (RESTtful Web Wervices)
 
#5 (Remote Method Invocation)
#5 (Remote Method Invocation)#5 (Remote Method Invocation)
#5 (Remote Method Invocation)
 
#4 (Remote Method Invocation)
#4 (Remote Method Invocation)#4 (Remote Method Invocation)
#4 (Remote Method Invocation)
 
#3 (Multi Threads With TCP)
#3 (Multi Threads With TCP)#3 (Multi Threads With TCP)
#3 (Multi Threads With TCP)
 
#2 (UDP)
#2 (UDP)#2 (UDP)
#2 (UDP)
 

[C++ Tutorial] #8 Files

  • 2. ‫املتطايرة‬ ‫الذاكرة‬ ‫يف‬ ‫ستخزن‬ ‫واليت‬ ‫املتحوالت‬ ‫يف‬ ‫البياانت‬ ‫خنزن‬ ‫برانمج‬ ‫كتابة‬‫عند‬RAM‫تنفيذ‬ ‫من‬ ‫االنتهاء‬ ‫وعند‬ ،،‫الربانمج‬ ‫هذه‬ ‫من‬ ‫املتحوالت‬ ‫تتحرر‬‫املواقع‬‫القيم‬ ‫وتضيع‬. ‫هلا‬ ‫الوصول‬ ‫نستطيع‬ ‫حيث‬ ‫الدائمة‬ ‫الذاكرة‬ ‫يف‬ ‫القيم‬ ‫هذه‬ ‫ين‬‫ز‬‫خت‬ ‫إىل‬ ‫حنتاج‬ ‫األحيان‬ ‫من‬ ‫الكثري‬ ‫يف‬‫يف‬‫أي‬‫وقت‬‫وهنا‬‫احلاجة‬ ‫وجدت‬ ‫إىل‬ ‫البداية‬ ‫يف‬،‫امللفات‬‫متعدد‬ ‫بصيغ‬ ‫امللفات‬ ‫وحفظ‬ ‫عليها‬ ‫البياانت‬ ‫كتابة‬‫على‬ ‫القدرة‬ ‫تعطي‬ ‫حيث‬‫الدائمة‬ ‫الذاكرة‬ ‫يف‬ ‫ة‬. ‫مقدمة‬ 1
  • 3. ‫البت‬:‫قيمة‬ ‫أتخذ‬ ‫ثنائية‬ ‫خلية‬ ‫هو‬‫إما‬‫بت‬ ‫شكل‬ ‫على‬ ‫ميثل‬ ‫النهاية‬ ‫يف‬ ‫احلاسوب‬ ‫داخل‬ ‫شي‬ ‫كل‬، ‫واحد‬ ‫أو‬ ‫صفر‬‫ات‬. ‫البايت‬:‫من‬ ‫مؤلف‬8‫بتات‬. ‫احلقل‬:‫نفسه‬ ‫للشيء‬ ‫تعود‬ ‫املعىن‬ ‫بنفس‬ ‫احملارف‬ ‫من‬ ‫جمموعة‬(‫مثال‬:‫األول‬ ‫االسم‬.) ‫السجل‬:‫كلية‬‫يف‬ ‫طالب‬ ‫بياانت‬ ‫أو‬ ‫كة‬‫شر‬ ‫يف‬ ‫موظف‬ ‫بياانت‬ ، ‫الواقع‬ ‫يف‬ ‫ما‬ ‫كائن‬‫متثل‬ ‫احلقول‬ ‫من‬ ‫جمموعة‬. ‫امللف‬:‫حسب‬ ‫البياانت‬ ‫ختزن‬ ‫التسلسلية‬ ‫امللفات‬ ‫يف‬ ، ‫السجالت‬ ‫من‬ ‫جمموعة‬‫املفتاح‬. ‫قواعد‬‫البياانت‬:‫من‬ ‫جمموعة‬‫امللفات‬. ‫البياانت‬ ‫تنظيم‬ ‫هرمية‬ 2
  • 4. ‫مؤ‬ ‫وصول‬ ‫حتدد‬ ‫واليت‬ ‫امللف‬ ‫هناية‬ ‫بعالمة‬ ‫تنتهي‬ ‫البايتات‬ ‫من‬ ‫سلسلة‬ ‫أنه‬ ‫على‬ ‫امللف‬ ‫مع‬ ‫اللغة‬ ‫تتعامل‬‫لنهايته‬ ‫امللف‬ ‫شر‬. ‫عندما‬‫امللف‬ ‫الربانمج‬ ‫يفتح‬‫تبط‬‫ر‬‫م‬ ‫وجمرى‬ ‫غرض‬ ‫ينشأ‬ ‫فأنه‬‫به‬. ‫والربانمج‬ ‫امللف‬ ‫بني‬ ‫اتصال‬ ‫أداة‬ ‫هو‬ ‫واجملرى‬(‫امللف‬ ‫إىل‬ ‫واخلرج‬ ‫الدخل‬ ‫لتوجيه‬.) ‫املكتبة‬ ‫إىل‬ ‫حنتاج‬ ‫امللفات‬ ‫مع‬ ‫التعامل‬ ‫عند‬<fstream> ‫اجملاري‬ ‫مع‬ ‫للتعامل‬ ‫أشكال‬ ‫ثالثة‬ ‫وتقدم‬: Ifstream:‫اءة‬‫ر‬‫ق‬ ‫جمرى‬‫فقط‬. Ofstream:‫كتابة‬‫جمرى‬‫فقط‬. Fstream:‫اءة‬‫ر‬‫ق‬ ‫جمرى‬‫كتابة‬‫و‬. ‫والقنوات‬ ‫امللفات‬ 3
  • 5. ‫امللفات‬ ‫مع‬ ‫السجالت‬ ‫نستخدم‬ ‫ما‬ ً‫ا‬‫غالب‬. ‫امللف‬ ‫بنية‬ ‫حتديد‬ ‫على‬ ‫السجل‬ ‫يساعد‬. ‫امللف‬ ‫أسطر‬ ‫يف‬ ‫سجل‬ ‫نكتب‬. ‫والكتابة‬ ‫اءة‬‫ر‬‫الق‬ ‫عمليات‬ ‫السجالت‬ ‫تسهل‬. ‫والقنوات‬ ‫امللفات‬ 4
  • 6. ‫متسلسل‬ ‫بشكل‬ ،‫به‬ ‫الكتابة‬ ‫متت‬ ‫اليت‬ ‫تيب‬‫رت‬‫ال‬ ‫بنفس‬ ‫البياانت‬ ‫أ‬‫ر‬‫تق‬. ‫امللف‬ ‫منتصف‬ ‫يف‬ ‫سجل‬ ‫إضافة‬ ‫ميكن‬ ‫ال‬. ‫امللف‬ ‫من‬ ‫مباشر‬ ‫بشكل‬ ‫سجل‬ ‫حذف‬ ‫ميكن‬ ‫ال‬. ‫امللف‬ ‫من‬ ‫مباشر‬ ‫بشكل‬ ‫سجل‬ ‫من‬ ‫حقل‬ ‫أو‬ ‫سجل‬ ‫تعديل‬ ‫ميكن‬ ‫ال‬. ‫التسلسلي‬ ‫الوصول‬ ‫ملفات‬ 5
  • 7. ‫امللف‬ ‫على‬ ‫كتابة‬‫قناة‬ ‫إنشاء‬. ‫عليه‬ ‫والكتابة‬ ‫امللف‬ ‫مع‬ ‫التعامل‬ ‫القناة‬ ‫هذه‬ ‫مهمة‬. ‫اسم‬ ‫إبعطاء‬ ً‫ا‬‫دائم‬ ‫أوصي‬fout‫للقناة‬ ‫التسلسلية‬ ‫امللفات‬ ‫على‬ ‫الكتابة‬ 6 ofstream fout(“filePath”, fileOpenMode) ‫امللف‬ ‫فتح‬ ‫أمناط‬: •ios::app:ً‫ا‬‫مسبق‬ ‫املوجودة‬ ‫البياانت‬ ‫على‬ ‫واحلفاظ‬ ،‫امللف‬ ‫هناية‬ ‫يف‬ ‫الكتابة‬. •ios::ate:‫منه‬ ‫مكان‬ ‫أي‬ ‫يف‬ ‫الكتابة‬ ‫إمكانية‬ ‫مع‬ ‫املفتوح‬ ‫امللف‬ ‫هناية‬ ‫إىل‬ ‫التحرك‬. •ios::in:‫للدخل‬ ‫أنه‬ ‫على‬ ‫امللف‬ ‫فتح‬(‫اءة‬‫ر‬‫ق‬)‫فقط‬. •ios::out:‫للخرج‬ ‫أنه‬ ‫على‬ ‫امللف‬ ‫فتح‬(‫كتابة‬)‫فقط‬. •ios::trunc:‫للخرج‬ ‫االسم‬ ‫بنفس‬ ‫ملف‬ ‫واستخدام‬ ً‫ا‬‫موجود‬ ‫كان‬‫إذا‬ ‫امللف‬ ‫حذف‬.
  • 8. ‫امللف‬ ‫على‬ ‫اج‬‫ر‬‫اإلخ‬(‫امللف‬ ‫على‬ ‫الكتابة‬ ‫هي‬)‫على‬ ‫الربانمج‬ ‫من‬ ‫البياانت‬ ‫اج‬‫ر‬‫إخ‬ ‫عملية‬ ‫وهي‬‫امللف‬. ‫امللف‬ ‫من‬ ‫اإلدخال‬(‫امللف‬ ‫من‬ ‫اءة‬‫ر‬‫الق‬ ‫هي‬)‫الربانمج‬ ‫إىل‬ ‫امللف‬ ‫من‬ ‫البياانت‬ ‫إدخال‬ ‫عملية‬ ‫وهي‬. ‫النمط‬ ‫أيخذ‬ ً‫ا‬‫اضي‬‫رت‬‫اف‬ ‫فأنه‬ ‫امللف‬ ‫فتح‬ ‫نوع‬ ‫حتديد‬ ‫عدم‬ ‫عند‬ios::out. ً‫ال‬‫مث‬ ،‫ملف‬ ‫مع‬ ‫قناة‬ ‫فتح‬ ‫عن‬ ‫خطأ‬ ‫حيدث‬ ‫أن‬ ‫ميكن‬:‫أ‬ ،‫الكتابة‬ ‫أو‬ ‫اءة‬‫ر‬‫للق‬ ‫قابل‬ ‫غري‬ ‫امللف‬ ،‫موجود‬ ‫غري‬ ‫امللف‬‫أذوانت‬ ‫مشكلة‬ ‫و‬. ‫مالحظات‬ 7
  • 10. ‫قناة‬ ‫إنشاء‬‫على‬ ‫اءة‬‫ر‬‫ق‬‫امللف‬. ‫مع‬ ‫التعامل‬ ‫القناة‬ ‫هذه‬ ‫مهمة‬‫منه‬ ‫اءة‬‫ر‬‫للق‬ ‫امللف‬. ‫اسم‬ ‫إبعطاء‬ ً‫ا‬‫دائم‬ ‫أوصي‬fin‫للقناة‬ ‫التسلسلية‬ ‫امللفات‬ ‫من‬ ‫اءة‬‫ر‬‫الق‬ 9 Ifstream fin(“filePath”, ios::in) ‫امللف‬ ‫لنهاية‬ ‫الوصول‬ ‫عند‬eof()‫ل‬ ً‫ة‬‫مشري‬ ‫صفر‬ ‫قيمة‬ ‫وتعيد‬ ‫القناة‬ ‫تتوقف‬‫هناية‬ ‫إىل‬ ‫لوصول‬‫امللف‬. ‫التايل‬ ‫البايت‬ ‫اءة‬‫ر‬‫لق‬ ‫املؤشر‬ ‫ينتقل‬ ‫ابيت‬ ‫اءة‬‫ر‬‫ق‬ ‫عند‬.
  • 11. ‫قناة‬ ‫إنشاء‬ ‫عن‬ ‫مثال‬‫اءة‬‫ر‬‫ق‬ 10
  • 12. ‫مؤشر‬ ‫مبوقع‬ ‫حتكم‬ ‫عمليات‬ ‫يوجد‬،‫امللف‬‫ولك‬ ‫معينة‬ ‫ألماكن‬ ‫للوصول‬ ‫تساعدان‬ ‫نفسها‬ ‫املكتبة‬ ‫من‬ ‫مقدمة‬ ‫وهي‬‫معرفة‬ ‫غري‬ ‫من‬ ‫ن‬ ‫احلايل‬ ‫املوقع‬ ‫يف‬ ‫نة‬‫ز‬‫املخ‬ ‫البياانت‬ ‫قيمة‬. •ios::beg:‫لبداية‬ ‫الوصول‬‫امللف‬. •ios::cur:‫املوقع‬ ‫عن‬ ‫تعرب‬‫احلايل‬. •ios::end:‫آلخر‬ ‫الوصول‬‫امللف‬. ‫ومها‬ ‫ابلقناة‬ ‫تبط‬‫ر‬‫امل‬ ‫امللف‬ ‫يف‬ ‫املؤشر‬ ‫متوضع‬ ‫إلعادة‬ ‫اتبعني‬ ‫يوجد‬: •Seekg‫اءة‬‫ر‬‫الق‬ ‫قناة‬ ‫أجل‬ ‫من‬ •Seekp‫الكتابة‬ ‫قناة‬ ‫أجل‬ ‫من‬ ‫املطلوب‬ ‫املكان‬ ‫إىل‬ ‫املؤشر‬ ‫احة‬‫ز‬‫إب‬ ‫يقومان‬ ‫حيث‬. ‫ملعرفة‬‫التابع‬ ‫يوجد‬ ‫املؤشر‬ ‫موقع‬tellg()‫احلايل‬ ‫املؤشر‬ ‫موقع‬ ‫لنا‬ ‫يعيد‬(‫ابلبايتات‬ ‫املعادة‬ ‫القيمة‬) ‫املؤشر‬ ‫مبوضع‬ ‫التحكم‬ ‫عمليات‬ 11
  • 13. ‫تتضمن‬ ‫ائية‬‫ر‬‫ش‬ ‫فاتورة‬ ‫لدينا‬N‫خالل‬ ‫من‬ ‫منتج‬ ‫كل‬‫يعرف‬ ‫حبيث‬ ‫منتج‬(‫رقم‬–‫اسم‬–‫اة‬‫ر‬‫املتش‬ ‫الوحدة‬ ‫سعر‬–‫الوحدات‬ ‫عدد‬– ‫اإلمجايل‬ ‫السعر‬)‫التالية‬ ‫التوابع‬ ‫يتضمن‬ ‫برانمج‬ ‫بكتابة‬ ‫السجالت‬ ‫مفهوم‬ ‫استخدم‬ ،: •‫تسلسلي‬ ‫ملف‬ ‫ضمن‬ ‫فاتورة‬ ‫بياانت‬ ‫لكتابة‬ ‫اتبع‬. •‫التسلسلي‬ ‫امللف‬ ‫حمتوايت‬ ‫لطباعة‬ ‫اتبع‬. •‫اسم‬ ‫حتديد‬ ‫خالل‬ ‫من‬ ‫منتجات‬ ‫ألحد‬ ‫الوحدة‬ ‫سعر‬ ‫لتعديل‬ ‫اتبع‬‫املنتج‬. •‫تسلسلي‬ ‫ملف‬ ‫إىل‬ ‫السابق‬ ‫امللف‬ ‫من‬ ‫منتج‬ ‫لكل‬ ‫اإلمجايل‬ ‫والسعر‬ ‫االسم‬ ‫لنسخ‬ ‫اتبع‬‫جديد‬. •‫وطباعة‬ ‫رقمه‬ ‫خالل‬ ‫من‬ ‫منتج‬ ‫بياانت‬ ‫عن‬ ‫للبحث‬ ‫اتبع‬‫بياانته‬. •‫السابقة‬ ‫التوابع‬ ‫مجيع‬ ‫يستدعي‬ ‫الذي‬ ‫ئيسي‬‫ر‬‫ال‬ ‫التابع‬. ‫التسلسلية‬ ‫امللفات‬ ‫عن‬ ‫مثال‬ 12
  • 15. ‫رقم‬ ‫معرفة‬ ‫مبجرد‬ ‫يده‬‫ر‬‫ن‬ ‫الذي‬ ‫للعنصر‬ ‫الوصول‬‫سطره‬. ‫أم‬ ‫املطلوب‬ ‫العنصر‬ ‫هو‬ ‫هل‬ ‫واختبار‬ ‫امللف‬ ‫سجالت‬ ‫كامل‬‫على‬ ‫للمرور‬ ‫داعي‬ ‫وال‬‫ال‬. ‫الذي‬ ‫السطر‬ ‫يف‬ ً‫ة‬‫مباشر‬ ‫ما‬ ‫سجل‬ ‫إدخال‬‫يده‬‫ر‬‫ن‬. ‫امللف‬ ‫بنية‬ ‫يب‬‫ر‬‫خت‬ ‫بدون‬ ً‫ة‬‫مباشر‬ ‫سجل‬ ‫وتعديل‬ ‫حذف‬‫األصلي‬. ‫الوصول‬ ‫ملفات‬‫العشوائي‬ 14
  • 16. ‫ال‬ ‫فقط‬ ‫ابلسطر‬ ‫واحد‬ ‫سجل‬ ‫نكتب‬ ‫حنن‬‫غري‬. ‫حجمه‬ ‫والسجل‬‫اثبت‬. ‫السجل‬ ‫حجم‬ ً‫ا‬‫علم‬ ،‫األول‬ ‫السطر‬ ‫موقع‬ ‫ماهو‬100‫ابيت؟‬ •‫صفر‬ ‫هو‬ ‫األول‬ ‫السطر‬ ‫دليل‬*100(‫السجل‬ ‫حجم‬= )0 ‫السجل‬ ‫حجم‬ ً‫ا‬‫علم‬ ،‫اخلامس‬ ‫السطر‬ ‫موقع‬ ‫ماهو‬100‫ابيت؟‬ •‫هو‬ ‫اخلامس‬ ‫السطر‬ ‫دليل‬4*100(‫السجل‬ ‫حجم‬= )400(‫اخلامس‬ ‫السطر‬ ‫بداية‬ ‫يف‬ ‫يقف‬ ‫املؤشر‬) ‫تذكر‬ 15
  • 17. ‫عشوائي‬ ‫ملف‬ ‫على‬ ‫والكتابة‬ ‫اءة‬‫ر‬‫للق‬ ‫واحدة‬ ‫قناة‬ ‫حنتاج‬. ‫عشوائي‬ ‫وصول‬ ‫ذو‬ ‫جاهز‬ ‫كتابة‬‫و‬ ‫اءة‬‫ر‬‫ق‬ ‫اتبع‬ ‫يوجد‬ ‫امللف‬ ‫مع‬ ‫اتصال‬ ‫قناة‬ ‫إلنشاء‬: ‫عشوائي‬ ‫ملف‬ ‫مع‬ ‫اتصال‬ ‫قناة‬ ‫إنشاء‬ 16 fstream f ("student.data",ios::out | ios :: in | ios::bin);
  • 18. ‫عشوائي‬ ‫ملف‬ ‫من‬ ‫اءة‬‫ر‬‫والق‬ ‫الكتابة‬ 17 f.seekp( pos_type ); //f.seekp((number - 1) * sizeof(struct)); f.write(const char *, size); f.seekg ( pos_type ); //f.seekg((number - 1) * sizeof(struct)); f.read( (char*) &s2, size);
  • 19. ‫عشوائي‬ ‫ملف‬ ‫على‬ ‫الكتابة‬ ‫مثال‬ 18
  • 20. ‫ـ‬‫ب‬ ‫بون‬‫ز‬ ‫كل‬‫يعرف‬ ‫حيث‬ ‫ما‬ ‫بنك‬ ‫زابئن‬ ‫بياانت‬ ‫لدينا‬(‫رقم‬–‫اسم‬–‫كنية‬–‫رصيد‬)‫يت‬ ‫برانمج‬ ‫كتابة‬‫واملطلوب‬‫التالية‬ ‫التوابع‬ ‫ضمن‬: ‫املستخدم‬ ‫خيار‬ ‫وإدخال‬ ‫ات‬‫ر‬‫اخليا‬ ‫لطباعة‬ ‫اتبع‬. ‫الرقم‬ ‫حسب‬ ‫تبة‬‫ر‬‫م‬ ‫عشوائي‬ ‫ملف‬ ‫إىل‬ ‫بون‬‫ز‬ ‫بياانت‬ ‫إلضافة‬ ‫اتبع‬. ‫الشاشة‬ ‫على‬ ‫وطباعتها‬ ‫رقمه‬ ‫معرفة‬ ‫خالل‬ ‫من‬ ‫العشوائي‬ ‫امللف‬ ‫من‬ ‫ما‬ ‫بون‬‫ز‬ ‫بياانت‬ ‫اءة‬‫ر‬‫لق‬ ‫اتبع‬. ‫رقمه‬ ‫معرفة‬ ‫خالل‬ ‫من‬ ‫السابق‬ ‫امللف‬ ‫يف‬ ‫نقصان‬ ‫أو‬ ‫زايدة‬ ‫ما‬ ‫بون‬‫ز‬ ‫رصيد‬ ‫لتعديل‬ ‫اتبع‬. ‫حسب‬ ‫بون‬‫ز‬ ‫بياانت‬ ‫حلذف‬ ‫اتبع‬‫رقمه‬. ‫أخر‬ ‫تسلسلي‬ ‫ملف‬ ‫إىل‬ ‫العشوائي‬ ‫امللف‬ ‫بياانت‬ ‫لنسخ‬ ‫اتبع‬. ‫للمستخدم‬ ‫نوضحها‬ ‫اختيار‬ ‫بنية‬ ‫ضمن‬ ‫ئيسي‬‫ر‬‫ال‬ ‫التابع‬ ‫ضمن‬ ‫السابقة‬ ‫التوابع‬ ‫استدعاء‬(‫ب‬ ‫اتبع‬ ‫كل‬‫الشاشة‬ ‫على‬ ‫رقم‬.) ‫امللفات‬ ‫عن‬ ‫مثال‬‫العشوائية‬ 19