كيفية قراءة ملف سطرًا بسطر في Java

مقدمة

في هذا المقال، ستتعلم عن طرق مختلفة لاستخدام جافا لقراءة محتويات ملف سطراً سطراً. يستخدم هذا المقال طرق من الفئات الجافا التالية: java.io.BufferedReader، java.util.Scanner، Files.readAllLines()، و java.io.RandomAccessFile.

قراءة ملف سطراً سطراً باستخدام BufferedReader

يمكنك استخدام طريقة readLine() من الفئة java.io.BufferedReader لقراءة ملف سطراً سطراً إلى سلسلة نصية. تعيد هذه الطريقة قيمة null عندما يتم الوصول إلى نهاية الملف.

فيما يلي مثال على برنامج لقراءة ملف سطراً سطراً باستخدام BufferedReader:

ReadFileLineByLineUsingBufferedReader.java
package com.journaldev.readfileslinebyline;

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

public class ReadFileLineByLineUsingBufferedReader {

	public static void main(String[] args) {
		BufferedReader reader;

		try {
			reader = new BufferedReader(new FileReader("sample.txt"));
			String line = reader.readLine();

			while (line != null) {
				System.out.println(line);
				// قراءة السطر التالي
				line = reader.readLine();
			}

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

}

واصل تعلمك مع الوثائق لواجهة برمجة التطبيقات لـ BufferedReader (Java SE 8).

قراءة الملف سطرًا بسطر باستخدام Scanner

يمكنك استخدام فئة Scanner لفتح ملف ثم قراءة محتواه سطرًا بسطر.

فيما يلي برنامج مثال لقراءة ملف سطرًا بسطر باستخدام Scanner:

ReadFileLineByLineUsingScanner.java
package com.journaldev.readfileslinebyline;

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class ReadFileLineByLineUsingScanner {

	public static void main(String[] args) {
		try {
			Scanner scanner = new Scanner(new File("sample.txt"));

			while (scanner.hasNextLine()) {
				System.out.println(scanner.nextLine());
			}

			scanner.close();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}
	}

}

واصل تعلمك باستخدام وثائق API لـ Scanner (Java SE 8).

قراءة الملف سطرًا بسطر باستخدام Files

java.nio.file.Files هي فئة أدوات تحتوي على العديد من الطرق المفيدة. يمكن استخدام طريقة readAllLines() لقراءة كل سطور الملف إلى قائمة من السلاسل.

فيما يلي برنامج مثال لقراءة ملف سطرًا بسطر باستخدام Files:

ReadFileLineByLineUsingFiles.java
package com.journaldev.readfileslinebyline;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;

public class ReadFileLineByLineUsingFiles {

	public static void main(String[] args) {
		try {
			List<String> allLines = Files.readAllLines(Paths.get("sample.txt"));

			for (String line : allLines) {
				System.out.println(line);
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}

استمر في تعلمك مع مستند واجهة برمجة التطبيقات للملفات (Java SE 8).

قراءة الملف سطرًا بسطر باستخدام RandomAccessFile

يمكنك استخدام RandomAccessFile لفتح ملف بوضعية القراءة ومن ثم استخدام طريقته readLine لقراءة الملف سطرًا بسطر.

فيما يلي مثال على برنامج لقراءة الملف سطرًا بسطر باستخدام RandomAccessFile:

ReadFileLineByLineUsingRandomAccessFile.java
package com.journaldev.readfileslinebyline;

import java.io.IOException;
import java.io.RandomAccessFile;

public class ReadFileLineByLineUsingRandomAccessFile {

	public static void main(String[] args) {
		try {
			RandomAccessFile file = new RandomAccessFile("sample.txt", "r");
			String str;

			while ((str = file.readLine()) != null) {
				System.out.println(str);
			}

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

}

استمر في تعلمك مع مستند واجهة برمجة التطبيقات لـ RandomAccessFile (Java SE 8).

الاستنتاج

في هذا المقال، تعلمت عن طرق مختلفة لاستخدام Java لقراءة محتويات ملف سطرًا بسطر.

استمر في تعلمك مع المزيد من برامج تعليمية Java.

Source:
https://www.digitalocean.com/community/tutorials/java-read-file-line-by-line