0 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)

به چه روش هایی می توان در جاوا محتویات یک فایل را بصورت خط به خط خواند؟

1 پاسخ

0 امتیاز
قبل توسط (1.1هزار امتیاز)

راه های زیادی برای این کار وجود دارد ولی من استفاده از Stream ها در Java 8 رو ترجیح می دهم:

		String fileName = "c://lines.txt";

		//read file into stream, try-with-resources
		try (Stream<String> stream = Files.lines(Paths.get(fileName))) {

			stream.forEach(System.out::println);

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

البته قسمت خواندن فایل رو با BufferedReader هم می توان انجام داد:

        String fileName = "c://lines.txt";

        //read file into stream, try-with-resources
        try (Stream<String> stream = Files.newBufferedReader(Paths.get(fileName)).lines()) {

            stream.forEach(System.out::println);

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

یک روش قدیمیتر هم استفاده از کلاس Scanner است:

		String fileName = "c://lines.txt";

		try (Scanner scanner = new Scanner(new File(fileName))) {

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

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

و در نهایت یک روش خیلی قدیمی که با JDK 1.1 هم کار می کند:

		String fileName = "c://lines.txt";

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

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

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

سوالات مشابه

0 امتیاز
0 پاسخ 376 بازدید
+1 امتیاز
1 پاسخ 800 بازدید
0 امتیاز
1 پاسخ 1.3هزار بازدید
0 امتیاز
1 پاسخ 499 بازدید
+1 امتیاز
2 پاسخ 275 بازدید
+2 امتیاز
2 پاسخ 330 بازدید
0 امتیاز
1 پاسخ 42 بازدید
0 امتیاز
0 پاسخ 89 بازدید
...