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

Метод transferTo

Метод transferTo класса InputStream читает все байты из текущего входного потока и записывает их в переданный выходной поток OutputStream. Метод работает до тех пор, пока не достигнет конца входного потока. В единственный параметр мы передаем целевой выходной поток, в который будут записаны данные. Метод возвращает количество фактически переданных байтов в виде значения типа long.

Метод может выбросить исключение IOException, если во время чтения или записи произошла ошибка ввода-вывода.

Синтаксис

public long transferTo(OutputStream out) throws IOException

Пример

Давайте передадим данные из одного потока в другой с помощью метода transferTo:

import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; public class Main { public static void main(String[] args) throws IOException { byte[] data = "abcde".getBytes(); try (InputStream in = new ByteArrayInputStream(data); OutputStream out = new ByteArrayOutputStream()) { long count = in.transferTo(out); System.out.println(count); System.out.println(out.toString()); } } }

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

5 "abcde"

Пример

Давайте скопируем содержимое одного файла в другой с помощью метода transferTo:

import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; public class Main { public static void main(String[] args) throws IOException { try (InputStream in = new FileInputStream("input.txt"); OutputStream out = new FileOutputStream("output.txt")) { long count = in.transferTo(out); System.out.println(count); } } }

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

"12"

В данном примере число 12 означает количество байтов, которые были успешно скопированы из файла input.txt в файл output.txt.

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

  • класс InputStream,
    который представляет входной поток байтов
  • метод read,
    который читает один байт из потока
  • метод readAllBytes,
    который читает все байты из потока
  • класс OutputStream,
    который представляет выходной поток байтов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить