Задать вопрос
@Monile

Как редактировать определенную строчку в файле?

В консоли вводится номер строки которую нужно отредактировать, я ее нашел в файле, но как мне теперь заменить данные и сохранить в файл?
  • Вопрос задан
  • 71 просмотр
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
wataru
@wataru
Разработчик на С++, экс-олимпиадник.
Вам придется прочитать весь файл, отсчитать нужное количество строк, потом заменить кусок между двумя переводами строки на отредактированное значение, и в конце переписать весь файл. Можно немного соптимизировать и переписывать не весь файл, а только начиная с изменной строки. Используйте fseek чтобы переместится на начало строки/файла, fwrite, чтобы записать новые данные и ftruncate чтобы обрезать файл, если он стал короче.
Ответ написан
Комментировать
@Monile Автор вопроса
У меня изначально была структура и в ней есть id. С консоли запрашивался номер строки которую я хотел бы заменить, потом в структуре искал этот id и менял все его значения на новые, а потом перезаписывал файл. Через fseek с fwrite пробовал, но что-то у меня не получалось, скорее всего что-то я неправильно делал.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы