Почему при использовании AsciiString :: from_ascii в массиве байтов возникает ошибка «байт в индексе не является ASCII»? - PullRequest
0 голосов
/ 09 июля 2020

Я получаю сообщение об ошибке при запуске ascii::AsciiString::from_ascii в массиве байтов.

Ошибка: thread 'main' panicked at 'Failed: the byte at index 3 is not ASCII'

Байт в позиции 3 равен 137, что должно быть ë . Я также получил значения позиций 2 и 4, чтобы убедиться, что я не ошибаюсь с индексацией, и все они, похоже, имеют подходящие значения.

bytes[2] = 38 // & bytes[3] = 137 // ë bytes[4] = 56 // 8

Я не понимаю, что я здесь делаю не так. Читая документацию для этой функции , я не совсем уверен, почему это не сработает.

Что я делаю не так и почему возникает эта ошибка?

1 Ответ

5 голосов
/ 09 июля 2020

ASCII заканчивается порядковым номером 127; ë не является ASCII (и 137 не является порядковым значением ë в latin-1 или cp1252, которые люди часто принимают за ASCII). Ошибка правильно информирует вас об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...