我在C++中用C代码操作文件将文件中的内容加到自己定义的结构体中,但是我的结构体中的成员变量都是string型的
void LoadFile(ManagementSystem& Management,FILE* file){
string filename;
char flag;
cout<<"输入文件路径名:";
cin>>filename;
file = fopen(filename.c_str(),"rb");
if(file == NULL)
{
cout<<"文件未存在,是否创建(y/n)";
cin>>flag;
if(flag == 'Y' || flag == 'y')
{
file = fopen(filename.c_str(),"wb");
}
else
{
system("cls");
Menu();
return ;
}
}
cout<<"文件已打开,正在导入......"<<endl;
int Size = 0;
while(!feof(file))
{
DataNode* node = new DataNode;
if(fread(node,sizeof(DataNode),1,file))
{
cout<<node->SNumber<<endl;
//Management.Insert(node);
Size++;
}
}
fclose(file);
cout<<"文件导入成功,导入"<<(Size)<<"条记录!";
cout<<"请输入(1,2,3,4,5,6,7,8)选择(退出按0):";
}