如何使用C++从文本文件中删除特定行?

n9vozmp4  于 2022-12-15  发布在  其他
关注(0)|答案(1)|浏览(613)

这是我的文本文件内容。

1
2
3

我想删除那个文件中的一行。

#include <iostream>
#include <fstream>
#include <string>
std::fstream file("havai.txt", ios::app | ios::in | ios::out);

int main()
{
    std::string line;
    int number;
    std::cout << "Enter the number: ";
    std::cin >> number;
    while (file.good())
    {
        getline(file, line);
        if (std::to_string(number) == line)
        {
            // How can I delete that line of my text file?
        }
    }
    return 0;
}

如何删除 if 语句中的该行?

bksxznpy

bksxznpy1#

从文件中删除数据远比看起来要复杂得多,创建一个新文件并将需要保存的信息写入其中几乎总是要容易几个数量级。
1.打开文件A进行阅读。
1.打开文件B进行写入。
1.对于文件A中的每一行:如果它不是一个要丢弃的行,就将它写入文件B。
1.关闭文件A
1.关闭文件B
1.用文件B替换文件A。

相关问题