Что означает код errno 88 (EILSEQ) в Solaris?

 
Также может означать:
КонстантаТипОС
ERROR_NET_WRITE_FAULTОшибка WindowsWindows
ENOTSOCKerrnoLinux
EBADMACHOerrnomacOS
FTDISK_INTERNAL_ERRORКод BSODWindows
VOLMGRX_INTERNAL_ERRORКод BSODWindows
Предыдущий Следующий
EBADMACHO EDESTADDRREQ

EILSEQ

Преобразование символов и многобайтовый ввод

В Solaris EILSEQ имеет значение errno 88. Основное сообщение: Недопустимая последовательность байтов., но полезный диагностический контекст уже краткого сообщения: solaris отклонил последовательность байтов, недопустимую для ожидаемой кодировки символов.

Для воспроизведения сохраните исходный байтовый буфер и имя активной локали. Если сначала преобразовать данные в Unicode или заменить ошибочные байты, причина EILSEQ исчезнет из диагностического материала.

Что проверить

  • Проверьте активную локаль и набор символов, используемый функцией преобразования.
  • При журналировании сохраняйте исходные байты; повторное преобразование может скрыть ошибочную последовательность.
  • Отличайте недопустимые последовательности байтов от ошибок диапазона, таких как EOVERFLOW.

Ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.