Textfiles C ++ Редактирование самой первой строки - PullRequest
0 голосов
/ 10 января 2011

Пример текстового файла:

5 <- мне нужно отредактировать этот номер. </p>

0

1

0

6

(пример кода, а не целая программа)

#include <fstream>
#include <iostream>
using namespace std;
int main() { 
int i;
cin>>i;
    std::fstream file("example.txt", std::ios::in | std::ios::out | std::ios::app);
    file.seekp(0);

    file << i;
    return 0;
}

С этим кодом добавляется число здесь: (example.txt)

5

0

1

0

67 << </p>

Обратите внимание, что снизу цифры будут увеличиваться, поэтому всегда должна быть первая строкане очень конкретно 5.

Пожалуйста, помогите Спасибо

1 Ответ

3 голосов
/ 10 января 2011

Вы открыли файл в режиме, который запрашивает, чтобы все новые данные были добавлены в конец файла (std::ios::app).Не указывайте этот флаг, если вы не хотите всегда добавлять.

Обратите внимание, что у вас возникнут проблемы, если новая строка, которую вы пишете, не будет точно такой же длины, каксуществующая линия.В случае, если это другая длина, вам придется скопировать и переписать весь оставшийся файл.

...