РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
737 of 1163 menu

Класс PrintStream

Класс PrintStream является потоком вывода, который умеет печатать данные в текстовом виде. Он автоматически преобразует числа, символы, логические значения и объекты в строки и отправляет их в нижележащий поток. Именно объектами этого класса являются стандартные потоки System.out и System.err.

Главная особенность класса в том, что он никогда не выбрасывает проверяемые исключения IOException. Вместо этого ошибки запоминаются внутри, а проверить их наличие можно с помощью метода checkError. Класс расширяет FilterOutputStream и реализует Appendable и Closeable.

Конструктор класса принимает целевой поток вывода или имя файла, а также необязательный флаг автоматического сброса буфера. Если флаг autoFlush равен true, то буфер сбрасывается при каждом вызове println, printf или format.

Синтаксис

PrintStream(OutputStream out) PrintStream(OutputStream out, boolean autoFlush) PrintStream(OutputStream out, boolean autoFlush, String encoding) PrintStream(String fileName) PrintStream(File file)

Пример

Давайте создадим объект PrintStream, связанный со стандартным потоком вывода, и напечатаем в него строку:

import java.io.PrintStream; public class Main { public static void main(String[] args) { PrintStream ps = System.out; ps.println("abcde"); } }

Результат выполнения кода:

"abcde"

Пример

Давайте создадим поток, который пишет данные в файл, и запишем в него несколько значений разных типов:

import java.io.PrintStream; import java.io.FileNotFoundException; public class Main { public static void main(String[] args) throws FileNotFoundException { PrintStream ps = new PrintStream("out.txt"); ps.print("value: "); ps.print(123); ps.println(); ps.printf("%d and %.2f", 42, 3.14); ps.close(); } }

Содержимое файла out.txt после выполнения кода:

"value: 123 42 and 3.14"

Пример

Давайте проверим, возникла ли ошибка при записи в поток, с помощью метода checkError:

import java.io.PrintStream; public class Main { public static void main(String[] args) { PrintStream ps = System.out; ps.print("abcde"); ps.flush(); boolean res = ps.checkError(); System.out.println(res); } }

Результат выполнения кода:

"false"

Смотрите также

  • метод println,
    который печатает данные и переводит строку
  • метод printf,
    который печатает данные по формату
  • метод flush,
    который сбрасывает буфер потока
  • класс System,
    который хранит стандартные потоки out и err
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить