MW211 EXIT

devlog
VC++/ファイルの最終行を検出する方法
2012年07月14日
C言語であれば以下のような感じか。
┌──────────────────────────────────────┐
│FILE  fp;                                                                   │
├──────────────────────────────────────┤
│while (fgets(line, sizeof(line), fp) != NULL) {                             │
│}                                                                           │
│if (ferror(fp)) {                                                           │
│    エラー;                                                                 │
│}                                                                           │
└──────────────────────────────────────┘
ファイルの最後になったらlineを書き換えないので、最後のlineが残っている。

MFCであれば、以下のような感じ。
┌──────────────────────────────────────┐
│CStdioFile  ファイル;                                                       │
├──────────────────────────────────────┤
│CString     line    = "";                                                   │
│CString     newLine = "";                                                   │
│while (ファイル.ReadString(newLine)) {                                      │
│    line = newLine;                                                         │
│}                                                                           │
└──────────────────────────────────────┘
但し、こちらはline(newLine)を書き換えてしまうため、
ワンクッション必要みたい。