#include <stdio.h>
#include <string>
#include <DxLib.h>
using namespace std;
int getLine(FILE *f, wstring *line);
int WINAPI WinMain(HINSTANCE hI, HINSTANCE hP, LPSTR lpC, int nC)
{
setlocale(LC_ALL, "");
FILE *f;
fopen_s(&f, "SCENE_DATA_FILE.txt", "r");
wstring wline;
getLine(f, &wline);
return 0;
}
int getLine(FILE *f, wstring *line)
{
wchar_t chUnicode;
int n;
line->clear();
for (;;)
{
n = fread(&chUnicode, sizeof chUnicode, 1, f);
if (n == 0) return -1; //★最後まで読み込んだ場合-1を返す
if (chUnicode == '\r')
{
//\n読み飛ばす
fread(&chUnicode, sizeof chUnicode, 1, f);
return line->length();
}
else
{
line->push_back(chUnicode);
}
}
}
「そんなことないさ。普通だよ。」と書いてあるUnicodeのテキストファイル(SCENE_DATA_FILE.txt)を読み込んでみると
最後まで読み込めません。実際には「そんなことないさ。普」までしか読み込めていません。
いくら考えてみてもわからないので質問しました。
どうしたらよいでしょうか、助言下さい。