使用C ++删除文件中的条目

时间:2016-04-05 14:59:15

标签: c++ fstream file-handling

我在CPP中使用fstream命令在这个文件中创建了一个txt文件我插入了学生的名字,但是如果我想要删除特定学生的信息而不是整个文件是可能的,怎么做...谢谢提前...我不想跳到一行,但我想删除一个特定的行

2 个答案:

答案 0 :(得分:1)

1. Read all record from file one by one
2. if (read_record==record_to be deleted)
skip
3. else
write record into new temporary file
4. Repeat step from 2 to 3 till all file is read
5. now delete original file
6. rename temporary file to original name

答案 1 :(得分:0)

以下是一些方法:

  1. 将所有“好”记录写入新文件,省略删除的内容。
  2. 使用'\ 0'标记(覆盖)文本以指示已删除的记录。
  3. 以读/写方式打开文件,并在删除后移动所有文本 文本,以便它覆盖已删除的文本(想想移动项目 数组)。
  4. 删除文本或数据时文件不会自动缩小;它们保持相同的大小(将它们视为数组)。