Класс Java PrintWriter
Класс Java PrintWriter
В этом руководстве мы узнаем о Java PrintWriter и его методах print() и printf() с помощью примеров.
PrintWriter
класс java.io
package можно использовать для записи выходных данных в удобочитаемой форме (текст).
Он расширяет абстрактный класс Writer
.
<час>
Работа PrintWriter
В отличие от других авторов, PrintWriter
преобразует примитивные данные (int
, float
, char
и т.д.) в текстовый формат. Затем он записывает отформатированные данные в модуль записи.
Кроме того, PrintWriter
класс не генерирует никаких исключений ввода/вывода. Вместо этого нам нужно использовать checkError()
метод, чтобы найти в нем любую ошибку.
Примечание :PrintWriter
класс также имеет функцию автоматической очистки. Это означает, что он заставляет модуль записи записывать все данные в место назначения, если один из println()
или printf()
методы вызываются.
Создать PrintWriter
Чтобы создать средство записи печати, мы должны импортировать java.io.PrintWriter
пакет первый. Как только мы импортируем пакет, мы можем создать модуль записи печати.
<сильный>1. Использование других авторов
// Creates a FileWriter
FileWriter file = new FileWriter("output.txt");
// Creates a PrintWriter
PrintWriter output = new PrintWriter(file, autoFlush);
Здесь
- мы создали средство записи печати, которое будет записывать данные в файл, представленный
FileWriter
- автосброс необязательный параметр, указывающий, следует ли выполнять автоматическую очистку или нет
<сильный>2. Использование других выходных потоков
// Creates a FileOutputStream
FileOutputStream file = new FileOutputStream("output.txt");
// Creates a PrintWriter
PrintWriter output = new PrintWriter(file, autoFlush);
Здесь
- мы создали средство записи печати, которое будет записывать данные в файл, представленный
FileOutputStream
- autoFlush необязательный параметр, указывающий, следует ли выполнять автоматическую очистку или нет
<сильный>3. Использование имени файла
// Creates a PrintWriter
PrintWriter output = new PrintWriter(String file, boolean autoFlush);
Здесь
- мы создали средство записи печати, которое будет записывать данные в указанный файл
- autoFlush необязательный логический параметр, указывающий, следует ли выполнять автоматическую очистку или нет
Примечание :во всех вышеперечисленных случаях PrintWriter
записывает данные в файл, используя некоторую кодировку символов по умолчанию. Однако мы можем указать кодировку символов (UTF8 или UTF16 ) тоже.
// Creates a PrintWriter using some character encoding
PrintWriter output = new PrintWriter(String file, boolean autoFlush, Charset cs);
Здесь мы использовали Charset класс для указания кодировки символов. Чтобы узнать больше, посетите страницу Java Charset (официальная документация по Java).
<час>Методы PrintWriter
PrintWriter
класс предоставляет различные методы, которые позволяют нам выводить данные на вывод.
Метод печати()
print()
- печатает указанные данные в писательprintln()
- печатает данные в модуль записи вместе с символом новой строки в конце
Например,
import java.io.PrintWriter;
class Main {
public static void main(String[] args) {
String data = "This is a text inside the file.";
try {
PrintWriter output = new PrintWriter("output.txt");
output.print(data);
output.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
В приведенном выше примере мы создали средство записи печати с именем output. . Этот модуль записи печати связан с файлом output.txt. .
PrintWriter output = new PrintWriter("output.txt");
Для печати данных в файл мы использовали print()
метод.
Здесь, когда мы запускаем программу, файл output.txt файл заполнен следующим содержимым.
This is a text inside the file.
<час> Метод printf()
printf()
можно использовать для печати форматированной строки. Он включает в себя 2 параметра:форматированную строку и аргументы. Например,
printf("I am %d years old", 25);
Здесь
- Я
%d
лет – форматированная строка %d
целочисленные данные в форматированной строке- 25 — это аргумент
Отформатированная строка включает в себя как текст, так и данные. Кроме того, аргументы заменяют данные внутри отформатированной строки.
Следовательно, %d заменяется на 25 .
<час>Пример:метод printf() с использованием PrintWriter
import java.io.PrintWriter;
class Main {
public static void main(String[] args) {
try {
PrintWriter output = new PrintWriter("output.txt");
int age = 25;
output.printf("I am %d years old.", age);
output.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
В приведенном выше примере мы создали средство записи печати с именем output. . Модуль записи печати связан с файлом output.txt. .
PrintWriter output = new PrintWriter("output.txt");
Чтобы напечатать форматированный текст в файл, мы использовали printf()
метод.
Здесь, когда мы запускаем программу, файл output.txt файл заполнен следующим содержимым.
I am 25 years old.
<час> Другие методы PrintWriter
Метод | Описание |
---|---|
close() | закрывает средство записи печати |
checkError() | проверяет, есть ли ошибка в модуле записи, и возвращает логический результат |
append() | добавляет указанные данные в модуль записи |
Чтобы узнать больше, посетите Java PrintWriter (официальная документация по Java).
java