void pay::js()
{
worker s;
fstream file("worker.dat",ios::in|ios::out);
if(!file){cout<<"error"<<endl;exit(0);}
while(!file.eof())
{
file.read((char *)&s,sizeof(s));//读取
if(file.fail()) break;
s.yfgz =(s.jbgz+s.zwgz+s.bzjt+s.jj+s.qtbz);//数据计算
cout<<s.yfgz <<endl;//检验是否计算了
s.sfgz =(s.yfgz-s.df-s.sf-s.qf) ;//数据计算
cout<<s.sfgz<<endl;//检验是否计算了
file.write((char *)&s,sizeof(s));//重新写入文件
}
file.close ();cout<<"计算完毕!"<<endl;
}
经检测发现计算无误,但是无法重新写入文件,是什么原因,望指教
{
worker s;
fstream file("worker.dat",ios::in|ios::out);
if(!file){cout<<"error"<<endl;exit(0);}
while(!file.eof())
{
file.read((char *)&s,sizeof(s));//读取
if(file.fail()) break;
s.yfgz =(s.jbgz+s.zwgz+s.bzjt+s.jj+s.qtbz);//数据计算
cout<<s.yfgz <<endl;//检验是否计算了
s.sfgz =(s.yfgz-s.df-s.sf-s.qf) ;//数据计算
cout<<s.sfgz<<endl;//检验是否计算了
file.write((char *)&s,sizeof(s));//重新写入文件
}
file.close ();cout<<"计算完毕!"<<endl;
}
经检测发现计算无误,但是无法重新写入文件,是什么原因,望指教