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

Метод read_to_end

Метод read_to_end читает все байты из источника ввода до достижения конца потока и записывает их в указанный вектор. Метод принимает изменяемую ссылку на вектор Vec<u8>, в который будут помещены прочитанные байты. Возвращает метод результат Result<usize, Error>, где usize - это количество прочитанных байтов.

Синтаксис

reader.read_to_end(&mut buf)

Пример

Давайте прочитаем все байты из строки "abcde" в вектор:

use std::io::Read; fn main() { let mut reader = "abcde".as_bytes(); let mut buf = Vec::new(); let res = reader.read_to_end(&mut buf).unwrap(); println!("{}", res); println!("{:?}", buf); }

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

5 [97, 98, 99, 100, 101]

Пример

Давайте прочитаем все байты из строки "12345" и преобразуем их обратно в строку:

use std::io::Read; use std::str; fn main() { let mut reader = "12345".as_bytes(); let mut buf = Vec::new(); reader.read_to_end(&mut buf).unwrap(); let res = str::from_utf8(&buf).unwrap(); println!("{}", res); }

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

"12345"

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

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