@PCmist

Как перекодировать cp866 в UTF-8 при помощи C++ и Code::Bloсks?

Добрый день, в программировании я понимаю довольно мало, но вот встала необходимость создать консольное приложение для перекодировки вывода одной старой программы из cp866 в UTF-8. Провёл много времени в поиковиках и понял, что решить данную проблему "в лоб" довольно сложно, т.к., C++ довольно низкоуровневный и поэтому нужна библиотека для перекодирования, были найдены icu и libiconv, но вот примеров того как воспользоваться этими библиотеками для создания приложения я не нашёл или попросту их не понял. Моя задача, в целом, такая - нужен exe'шник (всё происходит под Windows) единственная функция которого брать текст на cp866 и выдавать его в utf-8, чем меньше ПО для его работы нужно установить на ПК и чем он легче, тем лучше, поэтому я не воспользовался скомпелированным libiconv. Можете в общих чертах описать варианты решения данной задачи и указать на тот вариант решения который Вы бы сочли наиболее правильным? Если будет возможность указать на пример кода который будет работать на Code::Bloсks + MinGW - буду просто счастлив.
  • Вопрос задан
  • 1833 просмотра
Решения вопроса 2
saboteur_kiev
@saboteur_kiev Куратор тега C++
software engineer
Если вам нужно по минимуму использовать библиотеки, в чем проблема просто взять таблицу символов, и читать из файла побайтно, записывая в другой файл уже соответствующее ему значение по таблице.
Просто создайте массив для вашего перекодировщика, и все - из сторонних библиотек только чтение/запись.
Ответ написан
@Xano
en.cppreference.com/w/cpp/locale/codecvt_byname
ну либо как предлагают выше - руками
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы