>>321
close()したからではなくwhile(std::getline(ifs, buf))でeofになるまで読んだからfailになってる