يتم استخدام فئات Java FileWriter وFileReader لكتابة وقراءة البيانات من الملفات النصية (وهي تيار الشخصية الطبقات). فمن المستحسن لا لاستخدام فئات FileInputStream وFileOutputStream إذا كان عليك قراءة وكتابة أي معلومات نصية لأن هذه فئات دفق بايت.
كاتب الملف
يعد FileWriter مفيدًا لإنشاء ملف لكتابة الأحرف فيه.
- ترث هذه الفئة من فئة OutputStream.
- يفترض منشئو هذه الفئة أن ترميز الأحرف الافتراضي وحجم المخزن المؤقت الافتراضي للبايت مقبولان. لتحديد هذه القيم بنفسك، قم بإنشاء OutputStreamWriter على FileOutputStream.
- يهدف FileWriter إلى كتابة تدفقات من الأحرف. لكتابة تدفقات البايتات الأولية، فكر في استخدام FileOutputStream.
- يقوم FileWriter بإنشاء ملف الإخراج إذا لم يكن موجودًا بالفعل.
البنائين:
- هذه الفئة موروثة من فئة InputStreamReader.
- يفترض منشئو هذه الفئة أن ترميز الأحرف الافتراضي وحجم المخزن المؤقت الافتراضي للبايت مناسبان. لتحديد هذه القيم بنفسك، قم بإنشاء InputStreamReader على FileInputStream.
- يهدف FileReader إلى قراءة تدفقات الأحرف. لقراءة تدفقات البايتات الأولية، فكر في استخدام FileInputStream.
طُرق:
ما هو رقم الأبجدية
تتم القراءة والكتابة حرفًا بحرف مما يزيد من عدد عمليات الإدخال والإخراج ويؤثر على أداء النظام. كاتب مخزن يمكن استخدامه مع FileWriter لتحسين سرعة التنفيذ.
يصور البرنامج التالي كيفية إنشاء ملف نصي باستخدام FileWriter
// Creating a text File using FileWriter import java.io.FileWriter; import java.io.IOException; class CreateFile { public static void main(String[] args) throws IOException { // Accept a string String str = 'File Handling in Java using '+ ' FileWriter and FileReader'; // attach a file to FileWriter FileWriter fw=new FileWriter('output.txt'); // read character wise from string and write // into FileWriter for (int i = 0; i < str.length(); i++) fw.write(str.charAt(i)); System.out.println('Writing successful'); //close the file fw.close(); } }
قارئ الملفات
يعد FileReader مفيدًا لقراءة البيانات على شكل أحرف من ملف "نصي".
البنائين:
طُرق:
حدود:
cbuf - المخزن المؤقت للوجهة
off - الإزاحة التي يتم عندها البدء في تخزين الأحرف
لين - الحد الأقصى لعدد الأحرف للقراءة
حدود:
n - عدد الأحرف التي يجب تخطيها
يوضح البرنامج التالي كيفية القراءة من الملف "النصي" باستخدام FileReader
// Reading data from a file using FileReader import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; class ReadFile { public static void main(String[] args) throws IOException { // variable declaration int ch; // check if File exists or not FileReader fr=null; try { fr = new FileReader('text'); } catch (FileNotFoundException fe) { System.out.println('File not found'); } // read from FileReader till the end of file while ((ch=fr.read())!=-1) System.out.print((char)ch); // close the file fr.close(); } }
إنشاء اختبار