2013-02-24 17 views
13

Tôi đang cố gắng tạo một hệ thống điểm cao cơ bản cho một dự án mà tôi đang làm việc.Ghi đè dòng F ++ thay vì nối thêm

Vấn đề tôi gặp phải là, mặc dù tôi viết tên vào chính của mình nhưng chúng chỉ ghi đè lên trước đó.

Hiện nay tôi có điều này:

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(); 

} 

và để thử nghiệm tôi thêm họ như vậy:

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

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

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

Triển lãm trưng bày tải tất cả những gì sẽ xuất hiện là số điểm của Maxim, làm thế nào tôi có thể lặp qua và lưu tất cả, hoặc nối tất cả hay gì đó?

+0

Hãy xem một số tùy chọn qua [tài liệu] (http://en.cppreference.com/w/cpp/io/basic_ofstream/basic_ofstream). – chris

Trả lời

21

Bạn cần phải mở tập tin với chế độ append:

ofstream newFile("scorefile.txt", std::ios_base::app); 

various other modes quá.

+2

Ah đã nhận được nó, tất cả đều đã được lưu lại. Tuy nhiên, vẫn gặp sự cố với việc tải và hiển thị của tôi. Bước chân em bé. :) Cảm ơn. – Springfox