logo

معالجة الملفات في Java باستخدام FileWriter وFileReader

يتم استخدام فئات Java FileWriter وFileReader لكتابة وقراءة البيانات من الملفات النصية (وهي تيار الشخصية الطبقات). فمن المستحسن لا لاستخدام فئات FileInputStream وFileOutputStream إذا كان عليك قراءة وكتابة أي معلومات نصية لأن هذه فئات دفق بايت.
 

كاتب الملف
يعد FileWriter مفيدًا لإنشاء ملف لكتابة الأحرف فيه. 

  • ترث هذه الفئة من فئة OutputStream.
  • يفترض منشئو هذه الفئة أن ترميز الأحرف الافتراضي وحجم المخزن المؤقت الافتراضي للبايت مقبولان. لتحديد هذه القيم بنفسك، قم بإنشاء OutputStreamWriter على FileOutputStream. 
     
  • يهدف FileWriter إلى كتابة تدفقات من الأحرف. لكتابة تدفقات البايتات الأولية، فكر في استخدام FileOutputStream.
  • يقوم FileWriter بإنشاء ملف الإخراج إذا لم يكن موجودًا بالفعل.


البنائين:  



    كاتب الملف(ملف ملف) -ينشئ كائن FileWriter مع إعطاء كائن File.FileWriter (إلحاق ملف منطقي) -ينشئ كائن FileWriter نظرًا لكائن File.كاتب الملفات (FileDescriptor fd) -ينشئ كائن FileWriter مرتبطًا بواصف الملف.كاتب الملف (اسم ملف السلسلة) -ينشئ كائن FileWriter باسم ملف.FileWriter (سلسلة اسم الملف Boolean إلحاق) -ينشئ كائن FileWriter باسم ملف مع قيمة منطقية تشير إلى ما إذا كان سيتم إلحاق البيانات المكتوبة أم لا.


طُرق:  

ما هو رقم الأبجدية
    كتابة الفراغ العام (int c) تطرح IOException -يكتب حرفا واحدا.كتابة الفراغ العام (شار [] تحريك) يلقي IOException -يكتب مجموعة من الشخصيات.كتابة الفراغ العام (String str) تطرح IOException -يكتب سلسلة.كتابة الفراغ العام (سلسلة str كثافة العمليات قبالة إنت لين) يلقي IOException - يكتب جزء من السلسلة. هنا يتم الإزاحة التي تبدأ من خلالها كتابة الأحرف ولين هو عدد الأحرف المراد كتابتها.يلقي تدفق الفراغ العام () IOExceptionيمسح الدفقإغلاق الفراغ العام () يلقي IOExceptionيمسح الدفق أولاً ثم يغلق الكاتب.


تتم القراءة والكتابة حرفًا بحرف مما يزيد من عدد عمليات الإدخال والإخراج ويؤثر على أداء النظام. كاتب مخزن يمكن استخدامه مع FileWriter لتحسين سرعة التنفيذ.
يصور البرنامج التالي كيفية إنشاء ملف نصي باستخدام FileWriter
 

Java
// 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 مفيدًا لقراءة البيانات على شكل أحرف من ملف "نصي". 

  • هذه الفئة موروثة من فئة InputStreamReader.
  • يفترض منشئو هذه الفئة أن ترميز الأحرف الافتراضي وحجم المخزن المؤقت الافتراضي للبايت مناسبان. لتحديد هذه القيم بنفسك، قم بإنشاء InputStreamReader على FileInputStream. 
     
  • يهدف FileReader إلى قراءة تدفقات الأحرف. لقراءة تدفقات البايتات الأولية، فكر في استخدام FileInputStream.


البنائين:  

    قارئ الملفات (ملف الملف) -يقوم بإنشاء FileReader مع إعطاء الملف للقراءة منهقارئ الملفات (FileDescripter fd) -ينشئ FileReader جديدًا مع FileDescripter للقراءة منهقارئ الملفات (اسم ملف السلسلة) -يقوم بإنشاء FileReader جديد مع إعطاء اسم الملف للقراءة منه


طُرق:  

    القراءة العامة () تطرح IOException -يقرأ حرفًا واحدًا. سيتم حظر هذه الطريقة حتى يتوفر الحرف، أو يحدث خطأ في الإدخال/الإخراج أو يتم الوصول إلى نهاية الدفق.قراءة int العامة (char[] cbuff) تطرح IOException -يقرأ الأحرف في صفيف. سيتم حظر هذه الطريقة حتى يتوفر بعض المدخلات أو يحدث خطأ في الإدخال/الإخراج أو يتم الوصول إلى نهاية الدفق.الملخص العام int read(char[] buff int off int len) يلقي IOException -يقرأ الأحرف في جزء من المصفوفة. سيتم حظر هذه الطريقة حتى يتوفر بعض المدخلات أو يحدث خطأ في الإدخال/الإخراج أو يتم الوصول إلى نهاية الدفق. 
    حدود: 
    cbuf - المخزن المؤقت للوجهة 
    off - الإزاحة التي يتم عندها البدء في تخزين الأحرف 
    لين - الحد الأقصى لعدد الأحرف للقراءة 
     إغلاق الفراغ العام () يلقي IOExceptionيغلق القارئ.التخطي الطويل العام (long n) يرمي IOException -تخطي الشخصيات. سيتم حظر هذه الطريقة حتى تتوفر بعض الأحرف، أو يحدث خطأ في الإدخال/الإخراج أو يتم الوصول إلى نهاية الدفق. 
    حدود: 
    n - عدد الأحرف التي يجب تخطيها 


يوضح البرنامج التالي كيفية القراءة من الملف "النصي" باستخدام FileReader
 

Java
// 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();  } } 

 

إنشاء اختبار