Я пытаюсь прочитать в байтах из стандартного ввода в Rust.Приведенный ниже код отлично работает для строк, состоящих из обычных символов, но для необработанных байтов, у которых нет связанных символов (например, 0xe0
), это вызывает панику в программе.Документация говорит о том, что она заканчивается на символе новой строки, но не упоминает никаких проблем с не символьными байтами.
РЕДАКТИРОВАТЬ: Я действительно пропустил, что он говорит, что все байты должны быть в кодировке UTF-8 - есть ли другая функция, которую я могу использовать для этого?
let mut input = String::new();
io::stdin().read_line(&mut input)
.ok()
.expect("Couldn't read line");