Читати з файлу Java

1. BufferedReader: Цей метод читає текст з потоку вводу, використовуючи буферизацію.

     import java.io.*;

     public static void main(String[] args) throws Exception 

     { 

          //  \t - службовий символ

          File file = new File("1.txt");

          BufferedReader br = new BufferedReader(new FileReader(file));

          String st;

          while ((st = br.readLine()) != null)

          System.out.println(st);

     }

2. FileReader: Зручний для читання послідовності символів

import java.io.*;

public static void main(String[] args) throws Exception

{

FileReader fr = new FileReader("1.txt");

int i;

while ((i=fr.read()) != -1)

System.out.print((char) i);

}

3. Scanner: Може аналізувати прості типи данних використовуючи регулярні вирази

import java.io.File;

import java.util.Scanner;

public static void main(String[] args) throws Exception

{

File file = new File("1.txt");

Scanner sc = new Scanner(file);

while (sc.hasNextLine())

System.out.println(sc.nextLine());

}

4. Scanner, але без циклу:

import java.io.File;

import java.io.FileNotFoundException;

import java.util.Scanner;

public static void main(String[] args) throws FileNotFoundException

{

File file = new File("1.txt");

Scanner sc = new Scanner(file);

sc.useDelimiter("\\Z");  // \\Z - розділювач

System.out.println(sc.next());

}

5. Прочитати файл в список: Файл буде гарантовано закритий, коли будуть прочитані усі байти, чи відбудеться помилка.

import java.util.*;

import java.nio.charset.StandardCharsets;

import java.nio.file.*;

import java.io.*;

public static List<String> readFileInList(String fileName)

{

List<String> lines = Collections.emptyList();

try

{

lines = Files.readAllLines(Paths.get(fileName), StandardCharsets.UTF_8);

}

catch (IOException e)

{

// і ще щось зробити тут

e.printStackTrace();

}

return lines;

}

public static void main(String[] args)

{

List l = readFileInList("1.txt");

Iterator<String> itr = l.iterator();

while (itr.hasNext())

System.out.println(itr.next());

}

6. Прочитати файл в змінну String: 

import java.nio.file.*;

public static String readFileAsString(String fileName) throws Exception

{

String data = "";

data = new String(Files.readAllBytes(Paths.get(fileName)));

return data;

}

public static void main(String[] args) throws Exception

{

String data = readFileAsString("1.txt");

System.out.println(data);

}