В моем приложении я хочу преобразовать строку, которая содержит символ ý, в UTF-8. Но это не дает точного результата. Я использую функцию WideCharToMultiByte, она преобразует чистоту символов в ½.Ошибка преобразования CString в UTF8 для «ý»
Для примера: Input - "ý" выход - "ý"
Пожалуйста, смотрите ниже код ..
String strBuffer("ý");
char *utf8Buffer = (char*)malloc(strBuffer.GetLength()+1);
int utf8bufferLength = WideCharToMultiByte(CP_UTF8, 0, (LPCWSTR)strBuffer.GetBuffer(strBuffer.GetLength() + 1)),
strBuffer.GetLength(), utf8Buffer, strBuffer.GetLength() * 4,0,0);
Пожалуйста, дайте ваши предложения ...
- Binoy Krishna
Поздравляем, это работает. Ваш отладчик не знает, что ваш char * содержит текст, закодированный utf8, вы должны сообщить ему. Используйте спецификатор формата s8. –