Java FileReader (с примерами)

В этом руководстве мы узнаем о Java FileReader и его методах с помощью примеров.

FileReaderКласс java.ioпакета может быть использован для чтения данных (в символах) из файлов.

Это расширяет InputSreamReaderкласс.

Прежде чем вы узнаете об этом FileReader, убедитесь, что вы знаете о файле Java.

Создать FileReader

Чтобы создать программу для чтения файлов, мы должны java.io.FileReaderсначала импортировать пакет. После того, как мы импортируем пакет, вот как мы можем создать средство чтения файлов.

1. Используя имя файла

 FileReader input = new FileReader(String name); 

Здесь мы создали программу чтения файлов, которая будет связана с файлом, указанным по имени.

2. Использование объекта файла

 FileReader input = new FileReader(File fileObj); 

Здесь мы создали программу чтения файлов, которая будет связана с файлом, указанным объектом файла.

В приведенном выше примере данные в файле хранятся с использованием кодировки символов по умолчанию.

Однако, начиная с Java 11, мы также можем указать тип кодировки символов ( UTF-8 или UTF-16 ) в файле.

 FileReader input = new FileReader(String file, Charset cs); 

Здесь мы использовали Charsetкласс, чтобы указать кодировку символов средства чтения файлов.

Методы FileReader

FileReaderКласс обеспечивает реализации для различных методов представления в Readerклассе.

read () Метод

  • read() - читает одиночный символ из ридера
  • read(char() array) - считывает символы из ридера и сохраняет в указанном массиве
  • read(char() array, int start, int length) - считывает из ридера количество символов, равное длине, и сохраняет в указанном массиве, начиная с позиции start

Например, предположим, что у нас есть файл с именем input.txt со следующим содержимым.

 This is a line of text inside the file. 

Попробуем прочитать файл, используя FileReader.

 import java.io.FileReader; class Main ( public static void main(String() args) ( // Creates an array of character char() array = new char(100); try ( // Creates a reader using the FileReader FileReader input = new FileReader("input.txt"); // 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(); ) ) ) 

Вывод

 Данные в файле: это строка текста внутри файла. 

В приведенном выше примере мы создали средство чтения файлов с именем input. Программа чтения файлов связана с файлом input.txt .

 FileInputStream input = new FileInputStream("input.txt"); 

Для чтения данных из файла мы использовали read()метод.

getEncoding () Метод

getEncoding()Метод может быть использован для получения типа кодирования , который используется для хранения данных в файле. Например,

 import java.io.FileReader; import java.nio.charset.Charset; class Main ( public static void main(String() args) ( try ( // Creates a FileReader with default encoding FileReader input1 = new FileReader("input.txt"); // Creates a FileReader specifying the encoding FileReader input2 = new FileReader("input.txt", Charset.forName("UTF8")); // Returns the character encoding of the file reader System.out.println("Character encoding of input1: " + input1.getEncoding()); System.out.println("Character encoding of input2: " + input2.getEncoding()); // Closes the reader input1.close(); input2.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Вывод

 Кодировка символов input1: Cp1252 Кодировка символов input2: UTF8 

В приведенном выше примере мы создали 2 чтения файлов с именами input1 и input2.

  • input1 не указывает кодировку символов. Следовательно, getEncoding()метод возвращает кодировку символов по умолчанию.
  • input2 указывает кодировку символов UTF8 . Следовательно, getEncoding()метод возвращает указанную кодировку символов.

Примечание . Мы использовали этот Charset.forName()метод, чтобы указать тип кодировки символов. Чтобы узнать больше, посетите Java Charset (официальная документация по Java).

close () Метод

Чтобы закрыть файловый ридер, мы можем использовать close()метод. После вызова close()метода мы не можем использовать средство чтения для чтения данных.

Другие методы FileReader

Метод Описание
ready() проверяет, готов ли читатель файлов к чтению
mark() отметьте позицию в файловом ридере, до которой были прочитаны данные
reset() возвращает элемент управления в то место в ридере, где была поставлена ​​отметка

Чтобы узнать больше, посетите Java FileReader (официальная документация по Java).

Интересные статьи...