Java-program för att läsa innehållet i en fil rad för rad

I det här exemplet lär vi oss att läsa innehållet i en fil med olika klasser i Java.

För att förstå detta exempel bör du ha kunskap om följande Java-programmeringsämnen:

  • Java-filklass
  • Java BufferedInputStream-klass
  • Java FileReader-klass

Exempel 1: Java-program för att läsa fil med BufferedInputStream

 import java.io.BufferedInputStream; import java.io.FileInputStream; class Main ( public static void main(String() args) ( try ( // Creates a FileInputStream FileInputStream file = new FileInputStream("input.txt"); // Creates a BufferedInputStream BufferedInputStream input = new BufferedInputStream(file); // Reads first byte from file int i = input .read(); while (i != -1) ( System.out.print((char) i); // Reads next byte from the file i = input.read(); ) input.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) )

Produktion

 Första raden Andra raden Tredje raden fjärde raden femte raden

I exemplet ovan har vi använt BufferedInputStreamklassen för att läsa varje rad från filen som heter input.txt .

Obs! För att köra den här filen bör du ha en fil med namnet input.txt i din nuvarande arbetskatalog.

Exempel 2: Java-program för att läsa fil med BufferedReader

 import java.io.FileReader; import java.io.BufferedReader; class Main ( public static void main(String() args) ( // Creates an array of character char() array = new char(100); try ( // Creates a FileReader FileReader file = new FileReader("input.txt"); // Creates a BufferedReader BufferedReader input = new BufferedReader(file); // Reads characters input.read(array); System.out.println("Data in the file: "); System.out.println(array); // Closes the reader input.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) )

Produktion

 Data i filen: Första raden andra raden Tredje raden fjärde raden femte raden

I exemplet ovan har vi använt BufferedReader-klassen för att läsa filen med namnet input.txt .

Exempel 3: Java-program för att läsa fil med hjälp av skanner

 import java.io.File; import java.util.Scanner; class Main ( public static void main(String() args) ( 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 from file and print it System.out.println("Reading File Using Scanner:"); while(sc.hasNextLine()) ( System.out.println(sc.nextLine()); ) // close scanner sc.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) )

Produktion

 Läser fil med skannern: första raden andra raden tredje raden fjärde raden femte raden

I exemplet ovan har vi skapat ett objekt av Fileklassnamnet fil. Vi skapade sedan ett Scannerobjekt som är associerat med filen.

Här har vi använt skannermetoderna

  • hasNextLine () - returnerar true om det finns nästa rad i filen
  • nextLine () - returnerar hela raden från filen

För att lära dig mer om skannern, besök Java Scanner.

Intressanta artiklar...