В этом руководстве мы узнаем о Java PrintWriter и его методах print () и printf () с помощью примеров.
PrintWriter
Класс java.io
пакета может быть использован для записи выходных данных , обычно в читаемом виде (текст).
Он расширяет абстрактный класс 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
- autoFlush - необязательный параметр, который указывает, следует ли выполнять автоматическую очистку или нет.
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 () Метод
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).