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 BufferedInputStream
klassen 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 File
klassnamnet fil. Vi skapade sedan ett Scanner
objekt 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.