Windowsレジストリからエクスポートされた.regファイルを読みたいと思いました。そして、.regファイルがWindows UNICODEファイルとしてエンコードされていることがわかりました(最初の2バイトは:であるため、UCS2-LEでエンコードされていると思いますFFFE
)。
だから私はこのようにファイルを読みました:
fp = _wfopen(lpszRegFilePath, _T("r, ccs=UNICODE"));
if ( NULL == fp)
{
dwErr = ERROR_NOT_FOUND;
break;
}
szData = new WCHAR[8192];
ZeroMemory(szData, 8192);
fgetws(szData, 8192, fp);
//........
szData
結果
は次のとおりです。
_wfopenはBOMを認識できますか?もしそうなら、なぜそれは単にFFFE
BOMを無視するのですか?