Как перезаписать конкретный элемент в файле?

Допустим у нас есть файл содержащий n столбцов со строками вида login password. Собственно вопрос состоит в том, как перезаписать конкретный password на n-ом столбце. Прочитав файл таким образом я теперь могу обратиться к нужному мне password.

   baseusers.open(path2);

   while (!baseusers.eof())
   {
       baseusers >> log[kolp] >> passw[kolp];
       kolp++;
   }
   baseusers.close();

Но проблема в том, что я не знаю как присвоить ему новое значение так, чтобы оно сохранилось в файл.

P.S. Я не особо шарю в плюсах, так что не душите пожалуйста :)


Ответы (1 шт):

Автор решения: Harry

Перезаписывать в новый файл, потом переименовывать. Или считывать все в память, переделывать, как надо, перезаписывать файл...

Потому что размеры записей не фиксированы.

И еще — никогда так не делайте: while (!baseusers.eof()) — будет лишняя запись.

while(baseusers >> log[kolp] >> passw[kolp]) kolp++;
→ Ссылка