Java BufferedReader: كيفية قراءة الملف في Java مع المثال

كيفية قراءة ملف في Java?

Java يوفر العديد من الآليات للقراءة من الملف. الحزمة الأكثر فائدة التي يتم توفيرها لهذا الغرض هي java.io.Reader. تحتوي هذه الفئة على الفئة Java BufferedReader ضمن الحزمة java.io.BufferedReader

ما هي تفاصيل Bufferالقارئ في Java?

BufferedReader هو Java تستخدم الفئة لقراءة النص من مجرى إدخال (مثل ملف) عن طريق تخزين الأحرف مؤقتًا بحيث تقرأ الأحرف أو المصفوفات أو الأسطر بسلاسة. بشكل عام، يتسبب كل طلب قراءة يتم إجراؤه من قارئ في إجراء طلب قراءة مماثل من مجرى الأحرف أو البايتات الأساسي.

ولذلك فمن المستحسن التفاف Bufferالقارئ في Java حول أي قارئ قد تكون عمليات read() الخاصة به مكلفة، مثل Java FileReaders وInputStreamReaders. يتضمن الاستخدام النموذجي تمرير مسار الملف إلى Bufferالقارئ في Java كما يلي:

objReader = new BufferedReader(new FileReader("D:\DukesDiary.txt"));
//Assuming you have a text file in D drive

يؤدي هذا بشكل أساسي إلى تحميل ملفك في objReader. الآن، ستحتاج إلى تكرار محتويات الملف وطباعته.

إنّ حائط اللوب في الكود أدناه سوف يقرأ الملف حتى يصل إلى نهاية الملف

while ((strCurrentLine = objReader.readLine()) != null) {
    System.out.println(strCurrentLine);
}

يقرأ strCurrentLine السطر الحالي و Java دالة readLine objReader.readLine() ترجع سلسلة. ومن ثم، سوف تتكرر الحلقة حتى تصبح فارغة.

Bufferمثال على القارئ الإلكتروني

الكود أدناه هو أ Java Bufferمثال edReader الذي يوضح التنفيذ الكامل:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class ReadFileExample {

 public static void main(String[] args) {
  BufferedReader objReader = null;
  try {
   String strCurrentLine;

   objReader = new BufferedReader(new FileReader("D:\\DukesDiary.txt"));

   while ((strCurrentLine = objReader.readLine()) != null) {

    System.out.println(strCurrentLine);
   }

  } catch (IOException e) {

   e.printStackTrace();

  } finally {

   try {
    if (objReader != null)
     objReader.close();
   } catch (IOException ex) {
    ex.printStackTrace();
   }
  }
 }
}

ملحوظة:

يحتوي الكود أعلاه على بعض المعالجات المهمة جدًا خاصة في الجزء الأخير من الكود.

سيضمن هذا الرمز أن إدارة الذاكرة يتم تنفيذه بكفاءة ويتم استدعاء الأسلوب objReader.Close() الذي يقوم بتحرير الذاكرة.

Bufferمثال على edReader JDK7

وفيما يلي مثال على Java قراءة الملفات باستخدام Bufferفئة القارئ الإلكتروني

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class ReadFileExample_jdk7 {

 private static final String FILENAME = "D:\\DukesDiary.txt";

 public static void main(String[] args) {

  try (BufferedReader br = new BufferedReader(new FileReader(FILENAME))) {

   String strCurrentLine;

   while ((strCurrentLine = br.readLine()) != null) {
    System.out.println(strCurrentLine);
   }

  } catch (IOException e) {
   e.printStackTrace();
  }
 }
}