فهرس المقرر
تقييم

تقييم الدرس 12: التعامل مع الملفات File Handling

إجاباتك تُحفظ تلقائيًّا على هذا الجهاز. أجب ثم اضغط «صحّح ورقتي» أسفل كل قسم.

filename.txt FileWriterScanner

← العودة إلى الدرس 12: التعامل مع الملفات File Handling · أسئلة التقييم · أكمل الفراغات

أسئلة التقييم

أسئلة تقييم الدرس: التعامل مع الملفات File Handling. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».

1السؤال الأول: اختر الإجابة الصحيحة

1) أي من العبارات التالية صحيحة حول كلاس FileWriter؟
2) ما نوع البيانات التي يمكن كتابتها في ملف باستخدام FileWriter؟
3)
snippet
File f = new File("data.txt");
في الكود في الأعلى، ما الذي يفعله هذا السطر؟
4) أي من الدوال التالية تُستخدم لمعرفة ما إذا كان الملف قابلًا للقراءة؟
5)
snippet
FileWriter writer = new FileWriter("data.xls", true);
في الجملة السابقة، ماذا تعني القيمة true
6) ما هي فائدة الكلاس File في لغة Java؟
7) في البرنامج التالي، عند تنفيذ الدالة createNewFile وتم العثور على الملف موجودًا مسبقًا، ماذا يحدث؟
snippet
 File myFile = new File("students.txt");        try {            if (myFile.createNewFile()) {                System.out.println("Readable: " + myFile.canRead());                System.out.println("Writable: " + myFile.canWrite());             } else {                System.out.println("الملف موجود سابقا");                System.out.println("Name: " + myFile.getName());                System.out.println("Path" + myFile.getAbsolutePath());                System.out.println("Fize: " + myFile.length() + " byte");            }         } catch (IOException ex) {            System.out.println(ex.getMessage());        }
8) ما الذي تفعله الدالة createNewFile عند استدعائها على كائن File؟
9) ما نتيجة تنفيذ الكود إذا لم يكن الملف data.xls موجودا؟
snippet
public static void main(String[] args) {        File data = new File("data.xls");        try {            Scanner scan = new Scanner(data);            System.out.println("Name\t\tMark");            while (scan.hasNextLine()) {                System.out.println(scan.nextLine());        }	catch (FileNotFoundException ex) {            System.out.println(ex.getMessage());        }    }             }
10) في البرنامج التالي، لماذا تم استخدام كائنين من Scanner؟
snippet
public static void main(String[] args) {        Scanner text = new Scanner(System.in);        Scanner number = new Scanner(System.in);        String name = null, ans;        int mark;        FileWriter writer = null;        try {            writer = new FileWriter("data.xls", true);             while (true) {                System.out.print("Enter the student name: ");                name = text.nextLine();                System.out.print("Enter his mark: ");                mark = number.nextInt();                writer.write(name + "\t" + mark + "\n");                System.out.print("Do you want to stop? press 'y': ");                ans = text.nextLine();                if (ans.equalsIgnoreCase("y")) {                    break;                }             }        }        catch (Exception ex) {            System.out.println(ex.getMessage());        }        finally {            try {                if (writer != null) {                    writer.close();                }             } catch (IOException ex) {                System.out.println(ex.getMessage());            }        }     }
11) ما الذي سيحدث إذا لم يتم استدعاء الدالة close على كائن من نوع FileWriter؟
12) ما هو ناتج استدعاء myFile.length في الكود التالي؟
snippet
 File myFile = new File("students.txt");        try {            if (myFile.createNewFile()) {                System.out.println("Readable: " + myFile.canRead());                System.out.println("Writable: " + myFile.canWrite());             } else {                System.out.println("الملف موجود سابقا");                System.out.println("Name: " + myFile.getName());                System.out.println("Path" + myFile.getAbsolutePath());                System.out.println("Fize: " + myFile.length() + " byte");            }         } catch (IOException ex) {            System.out.println(ex.getMessage());        }
13) أكمل الفراغ: الكلاسات File و FileWriter موجودة في الحزمة ........
14) أكمل الفراغ: عند قراءة ملف سطرًا سطرًا، نستخدم في شرط الحلقة الدالة ........

2السؤال الثاني: صح أم خطأ

1) FileWriter يمسح محتوى الملف السابق إذا لم نمرر له القيمة true. صح أم خطأ؟
الصواب: صح
2) في ويندوز نكتب الشرطة الخلفية مرة واحدة في مسار الملف داخل النص. صح أم خطأ؟
الصواب: خطأ
3) عمليات الملفات قد ينتج عنها الاستثناء IOException. صح أم خطأ؟
الصواب: صح

3السؤال الثالث: أكمل الفراغات

1) للكتابة إلى ملف نستخدم الكلاس .

💡 الكلاس الذي يكتب إلى الملف.

الإجابة: FileWriter

2) للتحقق من وجود الملف: .

💡 دالة تتحقق من وجود الملف.

الإجابة: exists()

3) لإضافة نص في آخر الملف: new FileWriter("f.txt", ).

💡 قيمة منطقية تعني «إضافة في آخر الملف».

الإجابة: true

4) حذف الملف بالدالة .

💡 دالة الحذف.

الإجابة: delete()

4السؤال الرابع: التوصيل

طابِق كل عنصر في العمود (أ) بما يناسبه في العمود (ب):

  1. 1) File
  2. 2) FileWriter
  3. 3) Scanner(file)
  4. 4) getName()
  5. 5) mkdir()
  1. أ. يكتب إلى ملف.
  2. ب. يقرأ من ملف.
  3. ج. يمثّل الملف.
  4. د. ينشئ مجلدًا.
  5. هـ. اسم الملف.
المفتاح: (1) ج (2) أ (3) ب (4) هـ (5) د

5السؤال الخامس: أسئلة عملية

1) تتبّع الناتج:

snippet
import java.io.FileWriter;import java.io.File;import java.util.Scanner; public class Main{    public static void main(String[] args) throws Exception    {        FileWriter w = new FileWriter("t.txt");        w.write("one\ntwo\n");        w.close();        Scanner r = new Scanner(new File("t.txt"));        int count = 0;        while (r.hasNextLine())        {            r.nextLine();            count++;        }        r.close();        System.out.println(count);    }}
الناتج الصحيح:
Output×
2
أجب عن الأسئلة ثم اضغط «صحّح ورقتي».

أكمل الفراغات

اختر الكلمة الصحيحة من القائمة المنسدلة في كل فراغ. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».

1السؤال الأول: أسئلة عملية

1)

البرنامج يقوم بـ:
1) الكتابة في نهاية الملف دون مسح النص السابق في الملف
2) أخذ اسم الطالب و رقم الطالب من المستخدم باستخدام كلاس Scanner 3) ثم كتابة البيانات داخل الملف باستخدام كلاس FileWriter
اسم الملف students.txt

import java.io.FileWriter;import java.io.IOException;import java.util.Scanner;public class  MyFile{    public static void main(String[] args) {        Scanner input = new Scanner(System.in);        System.out.print("أدخل اسم الطالب: ");        String name = input.nextLine();        System.out.print("أدخل رقم الطالب: ");        String id = input.nextLine();        try {            // فتح الملف للإضافة إلى نهاية الملف            FileWriter writer = new FileWriter( "" ,);            // كتابة بيانات الطالب            writer.("student name: " + name + "\t id: " + id + "\n");           // إغلاق الملف            writer.();            System.out.println("تمت إضافة بيانات الطالب بنجاح.");        }// علاج الخطأ المتعلق بالتعامل مع الملفات حسب الكلاس المستورد في الأعلىcatch ( e) {// استدعي الدالة التي تعيد رسالة الخطأ            System.out.println("حدث خطأ أثناء الكتابة: " + e.());        }    }}
الإجابة: (1) students.txt · (2) true · (3) write · (4) close · (5) IOException · (6) getMessage
2)

البرنامج يقوم بـ:
1) القراءة من ملف اسمه data.txt باستخدام كلاس File وكلاس Scanner
2) طباعة محتويات الملف سطرا سطرا3) معالجة أي نوع من الأخطاء سؤال من كلاس File أو Scanner أو أي نوع آخر

import java.io.File;import java.util.Scanner; public class MyData {    public static void main(String[] args) {         try  {            // القراءة من الملف             File data = new File("");            Scanner scanner = new Scanner();            // طالما يحتوي الملف على سطر            while (scanner.()) {              // اطبع السطر التالي                System.out.println(scanner.());            }     // عالج جميع الأخطاء        } catch ( e) {          // اطبع رسالة الخطأ            System.out.println("حدث خطأ أثناء القراءة: " + e.());        }    } }
الإجابة: (1) data.txt · (2) data · (3) hasNextLine · (4) nextLine · (5) Exception · (6) getMessage
أجب عن الأسئلة ثم اضغط «صحّح ورقتي».