。 我是新來的C++。我必須找出文件包含的用戶傳遞的編碼類型。但我不知道如何檢查文件的編碼。所以我需要打印的文件是unicode或ansi或unicode big endian或utf8.I已經搜索了很多,但無法找到解決方案。到現在我已經做是我打開的文件:如何在C++中找到txt文件的編碼?
#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;
}
所以請誰能告訴我的代碼解決這個。
如果我正在訪問記事本文件,該怎麼辦?
Thanx提前..
你不能找出使用哪種編碼,你只能_predict_它。您應閱讀以下內容:http://www.joelonsoftware.com/articles/Unicode.html –
如果文件具有BOM,請使用BOM。如果不是,請詢問用戶。這是確保的唯一方法。 –
@jonathan如何檢查文件中的物料清單可以請您向我解釋。 。 –