V tomto příkladu se naučíme číst obsah souboru pomocí různých tříd v Javě.
Abychom porozuměli tomuto příkladu, měli byste znát následující programovací témata Java:
- Třída souborů Java
- Třída Java BufferedInputStream
- Třída Java FileReader
Příklad 1: Program Java ke čtení souboru pomocí 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(); ) ) )
Výstup
První řádek Druhý řádek Třetí řádek Čtvrtý řádek Pátý řádek
Ve výše uvedeném příkladu jsme použili BufferedInputStream
třídu ke čtení každého řádku ze souboru s názvem input.txt .
Poznámka : Chcete-li spustit tento soubor, měli byste mít v aktuálním pracovním adresáři soubor s názvem input.txt.
Příklad 2: Program Java ke čtení souboru pomocí 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(); ) ) )
Výstup
Data v souboru: První řádek Druhý řádek Třetí řádek Čtvrtý řádek Pátý řádek
Ve výše uvedeném příkladu jsme ke čtení souboru s názvem input.txt použili třídu BufferedReader .
Příklad 3: Program Java ke čtení souboru pomocí skeneru
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(); ) ) )
Výstup
Čtení souboru pomocí skeneru: První řádek Druhý řádek Třetí řádek Čtvrtý řádek Pátý řádek
Ve výše uvedeném příkladu jsme vytvořili objekt File
třídy s názvem file. Poté jsme vytvořili Scanner
objekt přidružený k souboru.
Zde jsme použili metody skeneru
- hasNextLine () - vrátí true, pokud je v souboru další řádek
- nextLine () - vrátí celý řádek ze souboru
Chcete-li se o skeneru dozvědět více, navštivte skener Java.