如何在c ++中找到txt文件的编码?

sAc*_*re. 1 c++

.我是c ++的新手.我必须找出文件包含的用户传递的编码类型.但我不知道如何检查文件的编码.所以我需要的是打印文件是unicode还是ansi或unicode big endian或utf8.I已搜索了很多但无法找到解决方案.直到现在我已经完成了我已经打开了一个文件:

#include "stdafx.h"
#include <iostream.h>
#include <stdio.h>
#include<conio.h>
#include <fstream>
using namespace std;



int _tmain(int argc, _TCHAR* argv[])
{
    fstream f;
    f.open("c:\abc.txt", fstream::in | fstream::out); /* Read-write. */


    getch();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

所以任何人都可以告诉我代码解决方案.

如果我正在访问记事本文件怎么办?

Thanx提前..

ole*_*sii 5

你不能.

您可以做的最好的事情是猜测它或将编码保存为文件结构的一部分(如果可以的话).

  • 它没有!它用英文文本做了很好的猜测.但是我已经看过很多次失败的非英语来源,像俄语可以是Windows-1251或KOI8-R(其他几个),所以我不得不去编码 - >字符集 - >西里尔语并尝试情侣,之前我可以阅读文字. (3认同)