Класс Java FileReader
Класс Java FileReader
В этом руководстве мы узнаем о Java FileReader и его методах с помощью примеров.
FileReader
класс java.io
package можно использовать для чтения данных (в символах) из файлов.
Он расширяет 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(char[] array)
- считывает символы из ридера и сохраняет в указанном массивеread(char[] array, int start, int length)
- считывает количество символов, равное 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();
}
}
}
Вывод
Data in the file: This is a line of text inside the file.
В приведенном выше примере мы создали программу чтения файлов с именем input. . Программа чтения связана с файлом input.txt. .
FileInputStream input = new FileInputStream("input.txt");
Для чтения данных из файла мы использовали read()
метод.
Примечание :файл input.txt должен присутствовать в текущем рабочем каталоге.
<час>Метод 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();
}
}
}
Вывод
The character encoding of input1: Cp1252 The character encoding of input2: UTF8
В приведенном выше примере мы создали 2 средства чтения файлов с именем input1. и ввод2 .
- вход1 не указывает кодировку символов. Следовательно,
getEncoding()
метод возвращает кодировку символов по умолчанию. - вход2 указывает кодировку символов, UTF8 . Следовательно,
getEncoding()
метод возвращает указанную кодировку символов.
Примечание :мы использовали Charset.forName()
метод для указания типа кодировки символов. Чтобы узнать больше, посетите страницу Java Charset (официальная документация по Java).
Метод close()
Чтобы закрыть программу чтения файлов, мы можем использовать close()
метод. Как только close()
вызывается метод, мы не можем использовать ридер для чтения данных.
Другие методы FileReader
Метод | Описание |
---|---|
ready() | проверяет, готова ли программа для чтения файлов к чтению |
mark() | отметить позицию в программе чтения файлов, до которой были прочитаны данные |
reset() | возвращает элемент управления в ту точку в ридере, где была установлена метка |
Чтобы узнать больше, посетите Java FileReader (официальная документация по Java).
java