文件读入多读一位

方法一:

ifstream inn("aa.txt",ios::binary);
 char m;
 while(!inn.eof())
 {
  inn.read((char*)&m, sizeof(char));


  if(inn.fail())
   HT[n].shu.erase(HT[n].shu.end()-1);//当读入的是最后一位时,将最后一位去掉
 }
 inn.close();

方法二:

while (!in.eof())
 {
  in >> str;   
  if (in.fail())//当读入最后一位时,退出
   break;
  s += str;

}

原文地址:https://www.cnblogs.com/xiangwo/p/4942603.html