テキスト ファイルをリソースに追加してから読み込むことで、プロジェクトにリンクしています。
と を使用LockResourceしてstatic_castにキャストしますstd::wstring
std::wstring sData(static_cast<wchar_t*>(pData));
私のプロジェクトでは UNICODE (windows) を使用しているため、 と を使用std::wstringしてwchar_tいます。
ファイルのエンコーディングを UCS-2 LE に設定する必要があることがわかりました。これは、Windowsが使用するエンコーディングであるためだと思います。
私の質問は、すべての Windows オペレーティング システムが現在 UCS-2 LE を使用していると想定しても安全でしょうか? UCS-2 BE (またはその他のもの) を使用するシステムに遭遇したくありません。私のプログラムは恐ろしくクラッシュします。
ファイルを ANSI で保存してから、オペレーティング システムが で使用しているエンコーディングに変換することもできますが、MultiByteToWideCharそれが間違いなく UCS-2 LE になる場合、これは時間の無駄になります。