Сложность использования библиотеки ICU преобразование символов UTF8 в C ++C++

Программы на C++. Форум разработчиков
Anonymous
Сложность использования библиотеки ICU преобразование символов UTF8 в C ++

Сообщение Anonymous »

Я пытаюсь использовать следующий фрагмент кода из этого ответа Stackoverflow: < /p>
a: Как преобразовать экземпляр std :: string в нижний случай < /p>
#include
#include
#include

#include

int main()
{
/* "Odysseus" */
char const * someString = u8"ΟΔΥΣΣΕΥΣ";
icu::UnicodeString someUString( someString, "UTF-8" );
// Setting the locale explicitly here for completeness.
// Usually you would use the user-specified system locale,
// which *does* make a difference (see ı vs. i above).
std::cout
icuuc.lib
icuin.lib
icuio.lib
< /code>
Код обеспечивает этот вывод: < /p>
Original string: ΟΔΥΣΣΕΥΣ
Lowercase:
Uppercase: ΟΔΥΣΣΕΥΣ
< /code>
Когда я делаю это: < /p>
#include "io.h"
#include "windows.h"

void
io::testfn()
{
SetConsoleOutputCP(CP_UTF8); //without this the letters are all "->->->..."
/* "Odysseus" */
char const* someString = u8"ΟΔΥΣΣΕΥΣ";
icu::UnicodeString someUString(someString, "UTF-8");
std::cout

Подробнее здесь: https://stackoverflow.com/questions/793 ... cters-in-c

Вернуться в «C++»