1

该文件采用 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");

还是同样的问题。

如何获得正确的字符串?

4

1 回答 1

0

我在这里找到了答案(需要将 utf-8 转换为 utf-16):

C++/WIN32 中 Unicode UTF-16 和 UTF-8 之间的转换

于 2017-02-08T13:14:54.927 回答