C++ fstream覆盖而不是追加

Spr*_*fox 25 c++ file overwrite

我正在尝试为我正在进行的项目创建一个基本的高分系统.

我遇到的问题是,虽然我将名字写入我的主要内容,但它们只是覆盖了之前的名称.

目前我有这个:

void ManagePoint::saveScore(string Name, int Score)
{

    ofstream newFile("scorefile.txt");

    if(newFile.is_open())   
    {
        newFile << Name << " " << Score;            
    }
    else 
    {
        //You're in trouble now Mr!
    }


    newFile.close();

}
Run Code Online (Sandbox Code Playgroud)

为了测试我正在添加它们:

runner->saveScore("Robert", 34322);

runner->saveScore("Paul", 526);

runner->saveScore("Maxim", 34322);
Run Code Online (Sandbox Code Playgroud)

在负载显示上,所有出现的是Maxim的分数,我如何循环并保存所有内容,或者附加全部或者其他内容?

Jos*_*eld 39

您需要使用追加模式打开文件:

ofstream newFile("scorefile.txt", std::ios_base::app);
Run Code Online (Sandbox Code Playgroud)

还有其他各种模式.

  • 啊,它得到了,他们现在都救了.我的加载和显示仍然有问题.宝贝的步骤.:) 谢谢. (3认同)