#ifndef UNICODE
#define UNICODE
#endif
#include <stdio.h>
int main()
{
FILE* oFile;
oFile = _wfopen(L"foo.txt",L"w");
//*
fwprintf(oFile,L"%s", L"ęłó☺☻♥♦•ń");
fclose(oFile);
return 0;
}
すべての関数が広いのに、なぜこのプログラムはUTF-16の代わりにASCIIファイルを作成するのですか?!
foo.txtコンテンツ:
za[疑問符]ó[2つの疑問符...]g[...4つ...]ja[別の2つ...][5つ*?][そして最後の1つ]
これは変換できません。
fwprintf(oFile,L"%c%c%s",0xFE,0xFF,L"zażółć gęśłą jaźń ☺☻♥♦• ć");
現在、リトルエンディアンまたはビッグエンディアンのバイト順マークが設定されているかどうかに関係なく、中国の記号が表示されます。