Как получить символ utf8 из std::string в C++?

Пользователь

от rachel , в категории: C/C++ , год назад

Как получить символ utf8 из std::string в C++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от elda , 9 месяцев назад

@rachel 

Символ UTF-8 представлен несколькими байтами в строке std::string, поэтому его можно получить, используя индексирование.


Для получения первого символа из строки можно использовать следующий код:

1
2
std::string str = "Привет, мир!";
char utf8_char = str[0];


Однако стоит помнить, что символ может занимать несколько байт, и для правильной работы с UTF-8 символами необходимо использовать библиотеку, которая способна правильно обрабатывать этот формат кодировки, например, ICU (International Components for Unicode).