我需要在C ++中的文件中插入数据。我需要插入名字和姓氏。文件中的所有行首先按姓氏排序,然后按名字排序。所以我的问题是当我插入新行如何在正确的位置插入并且所有记录仍然被排序?
使用此代码我只是将数据附加到文件中,但不知道如何排序 `
string fName,lName;
cout<<"Insert Last Name: "<<endl;
cin>>lName;
cout<<"Insert First Name: "<<endl;
cin>>fName;
ofstream myfile("sort.dat",ios::app);
myfile<<fName<<" "<<lName;`
答案 0 :(得分:1)
即使你发布的代码,也有很多工作要做:
也就是说,您的输入可能如下所示:
std::string fName, lName;
if (std::cout << "Insert last name: "
&& std::cin >> lName
&& std::cout << "Insert first Name: "
&& std::cin >> fName) {
// now do something with the read values
}
else {
// deal with the error
}
下一步是“插入文件”:这不起作用。排序文件必然会更少!相反,您将文件复制到新目的地并在适当的位置插入记录
我可以输入代码,但我不需要练习阅读/写文件。