Program Java zlicza liczbę wierszy obecnych w pliku

W tym przykładzie nauczymy się liczyć liczbę wierszy występujących w pliku w Javie.

Aby zrozumieć ten przykład, należy znać następujące tematy dotyczące programowania w języku Java:

  • Klasa plików Java
  • Klasa skanera Java

Przykład 1: program Java do zliczania liczby wierszy w pliku przy użyciu klasy Scanner

 import java.io.File; import java.util.Scanner; class Main ( public static void main(String() args) ( int count = 0; try ( // create a new file object File file = new File("input.txt"); // create an object of Scanner // associated with the file Scanner sc = new Scanner(file); // read each line and // count number of lines while(sc.hasNextLine()) ( sc.nextLine(); count++; ) System.out.println("Total Number of Lines: " + count); // close scanner sc.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) )

W powyższym przykładzie użyliśmy nextLine()metody Scannerklasy, aby uzyskać dostęp do każdej linii pliku. Tutaj, w zależności od liczby wierszy, które zawiera plik input.txt , program wyświetla dane wyjściowe.

W tym przypadku mamy plik input.txt o nazwie z następującą zawartością

 First Line Second Line Third Line

Więc otrzymamy wyjście

 Całkowita liczba linii: 3

Przykład 2: Program Java do zliczania wierszy w pliku przy użyciu pakietu java.nio.file

 import java.nio.file.*; class Main ( public static void main(String() args) ( try ( // make a connection to the file Path file = Paths.get("input.txt"); // read all lines of the file long count = Files.lines(file).count(); System.out.println("Total Lines: " + count); ) catch (Exception e) ( e.getStackTrace(); ) ) )

W powyższym przykładzie

  • lines () - odczytuje wszystkie linie pliku jako strumień
  • count () - zwraca liczbę elementów w strumieniu

Tutaj, jeśli plik input.txt zawiera następującą zawartość:

 This is the article on Java Examples. The examples count number of lines in a file. Here, we have used the java.nio.file package.

Program wydrukuje Total Lines: 3 .

Interesujące artykuły...