Подскажите, пожалуйста, есть ли какие — нибудь Win API функции, которые помогут преобразовать текст с Unicode big endian кодировкой к обычному Unicode тексту или же придется делать самому руками?
Здравствуйте, Аноним, Вы писали:
А>Подскажите, пожалуйста, есть ли какие — нибудь Win API функции, которые помогут преобразовать текст с Unicode big endian кодировкой к обычному Unicode тексту или же придется делать самому руками?
"Unicode big endian" такого понятия в природе нет.
Unicode это, грубо говоря просто большая таблица. Есть также форматы передачи unicode — UTF (Unicode transformation format), они бывают UTF8, UTF16, UTF32.
Вот UTF16, UTF32 как раз и бывают big-endian, little-endian.
Учитывая вышесказанное, твой вопрос мне непонятен. Что для тебя есть "Unicode big endian" и "обычный Unicode"?
Re[2]: Преобразование Unicode big endian в Unicode
Здравствуйте, korzh.pavel, Вы писали:
KP>Учитывая вышесказанное, твой вопрос мне непонятен. Что для тебя есть "Unicode big endian" и "обычный Unicode"?
Думаю, что просто надо перевертеть из UTF16-BE в UTF16-LE. Повордно прочитать и обменять у каждого ворда байты.
... << RSDN@Home 1.2.0 alpha rev. 655>>
Перекуём баги на фичи!
Re[3]: Преобразование Unicode big endian в Unicode
Здравствуйте, vita5555, Вы писали:
V>Здравствуйте, Кодт, Вы писали:
К>>Думаю, что просто надо перевертеть из UTF16-BE в UTF16-LE. Повордно прочитать и обменять у каждого ворда байты.
V>Т.е. через Win API не получится, только руками?
да, ручками придётся делать.
Re[4]: Преобразование Unicode big endian в Unicode
Здравствуйте, Аноним, Вы писали:
А>Подскажите, пожалуйста, есть ли какие — нибудь Win API функции, которые помогут преобразовать текст с Unicode big endian кодировкой к обычному Unicode тексту или же придется делать самому руками?
Во! Точно. Блин, не мог никак найти номер этой кодовой страницы, поэтому и не советовал.
А поскольку у нас форум С++, а не WinAPI, то ещё стоит упомянуть libiconv.