64,637
社区成员
发帖
与我相关
我的任务
分享
void File<T,T1>::Printmainfile(char* fn1)
{ifstream fin(fn1,ios::in|ios::binary);
if(!fin)
{cerr<<fn1<<' '<<"没有找到!"<<endl;exit(1);}
T1 x;
fin.seekg(0,ios::end); //将文件指针移至文件未
int b1=sizeof(T1);
int n=fin.tellg()/b1; //用n表示文件所含的记录数
fin.seekg(0); //将文件指针移至文件首
for(int i=0;i<n;i++) {
fin.read((char*) &x, b1); //从文件中读出一条记录
// if(i%4==0) cout<<endl; //每行显示4个数据
cout<<x.num<<" "<<x.key<<endl; //能正确显示
std::cout<<(x.content); //x.content是string类,为什么程序不能正确显示出它的内容,而是别的乱码??
cout<<endl;
}
cout<<endl;
fin.close();
}