Мне нужен код на C++ для преобразования строки, заданной в wchar_t*
, в UTF-16 нить. Он должен работать как в Windows, так и в Linux. Я просмотрел много веб-страниц во время поиска, но тема мне так и не ясна.
Насколько я понимаю, мне нужно:
setlocale
с кодировкой LC_TYPE и UTF-16.wcstombs
для преобразования wchar_t
в строку UTF-16.setlocale
для восстановления предыдущей локали.Знаете ли вы, как я могу преобразовать wchar_t*
в UTF-16 переносимым способом (Windows и Linux)?