C++ Невозможно прочитать кириллический текст UTF-8 из файла

Файл имеет кодировку UTF-8 (65001). Я не могу прочитать кириллические символы из него.

CString FNAME;
CStdiofile fNFR;

fNFR.Open(_T("LFS200.25"), CFile::modeRead);
fNFR.ReadString(FNAME);

И получил это:

 Зимний максимум 1989/90 гг.

вместо этого:

 Зимний максимум 1989/90 гг.

Пытался

setlocale(LC_ALL, "Rus");

Все та же проблема.

Как получить правильную строку?

1 ответ

Я нашел ответ здесь (нужно конвертировать utf-8 в utf-16):

КОНВЕРСИЯ МЕЖДУ ЮНИКОДОМ UTF-16 И UTF-8 В C++/WIN32

Другие вопросы по тегам