我定义了一个"编辑"用户输入ID的功能,我期待打印下13行,并对其进行更改,数据现在存储在文本文件中,如下所示:
6663 : available
pouya
oyya
3
2
3
4
3
2
3
1
2
3
4
7897 : available
pouya
pouya
3
4
.
.
.
所以我可以编写一个函数来搜索输入的id,它可以工作,但我不知道如何定义一种方法,在这种方式中可以打印和编辑这些字段......这是我的功能:
void Edit_the_apartment(string pass) {
std::fstream ifile("apartment.txt", std::ios::binary);
ifile.seekg(0, std::ios_base::end);
long s = ifile.tellg();
char *buffer = new char[s];
ifile.seekg(0);
ifile.read(buffer, s);
ifile.close();
std::string txt(buffer, s);
delete[] buffer;
size_t off = 0;
while ((off = txt.find(pass, off)) != std::string::npos)
{
//// Print next 13 lines and make changes to it
}
}
逻辑是每当用户输入ID时,将在文件中搜索值,并且将打印接下来的13行,这些是与相同公寓ID相关的细节,因此用户可以编辑保存新数据。