Информация про кодировки

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

Настройка кодировки в Ruby

Внутри Ruby-интерпретатора кодировкой строк по умолчанию является UTF-8. Строки, приходящие снаружи приложения, могут иметь другую кодировку и будут автоматически преобразованы во внутреннюю кодировку. Для управления данным процессом используется класс Encoding и его атрибут default_external.

При запуске приложения можно указать кодировку с помощью опций --external-encoding и --internal-encoding.

При работе с внешними ресурсами желательно всегда помнить, что данные могут придти в кодировке, отличной от кодировки по умолчанию. Большинство классов по работе с текстовыми данными принимают указание кодировки в качестве одного из аргументов.

Настройка кодировки в Windows-консоли

Для получения и изменения кодировки терминала в Windows используется команда chcp

  • Узнать кодировку — chcp.
  • Изменить кодировку на Windows 1251 — chcp 1251.
  • Изменить кодировку на Unicode — chcp 65001.