Как сделать изменение кодировки Latin1-UTF8 в C ++ (возможно, с Boost)? - PullRequest
4 голосов
/ 01 апреля 2009

Моя исходная база в основном использует UTF8, но в некоторых старых библиотеках есть строки, закодированные в кодировке Windows Latin1.

Я надеялся, что у Boost будет четкая функция преобразования, но я не нашел такой. Мне действительно нужно вручную писать такое обычное решение?

Ищете портативное решение, работающее на Linux.

( Этот Q похож, но не совсем тот же)

Редактировать: ICU, кажется, правильный ответ, но это немного излишне для моих нужд. В итоге я заменил строку для нескольких известных расширенных символов, которые были использованы.

1 Ответ

3 голосов
/ 01 апреля 2009

Международные компоненты для Unicode (ICU) действительно есть решения, которые вы ищете. Boost может быть скомпилирован с поддержкой ICU, например для регулярных выражений Boost, но предварительно скомпилированные версии Boost обычно не включают его.

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