我正在编写一个 C++ 程序来添加、查看、修改和删除“.txt”文件中的记录。
例如,“trains.txt”文件包含以下字段: - ID 列车 - 座位数 - 简短描述示例:(train01, 90, very good train) 并且所有操作都必须使用 struct 或 class 在文件中直接完成. 有人能帮我吗 ?:)
我正在编写一个 C++ 程序来添加、查看、修改和删除“.txt”文件中的记录。
例如,“trains.txt”文件包含以下字段: - ID 列车 - 座位数 - 简短描述示例:(train01, 90, very good train) 并且所有操作都必须使用 struct 或 class 在文件中直接完成. 有人能帮我吗 ?:)
如果您绝对需要实现自己的“数据库”......
您可以通过为每个字段使用固定长度来避免重写整个文件,并在必要时添加空格。即使某些记录被删除,您也可以只从删除记录的位置重写文件,保持头部完好无损。甚至将它们标记为已删除并稍后一起删除。
首先将所有记录读入内存。编辑内存中的值。然后截断您的旧文件并根据您的内存记录生成一个新文件。插入/删除文本没有神奇的方法。
考虑使用这样的东西:
struct Train
{
string id;
int seats;
string description;
}
vector<Train> trains;
// read all lines to trains
trains[2].seats = 80;
// write trains to a file