| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Удалить из текстового файла первую строку |
| Автор: Ibragim 24.12.2006, 05:21 |
| Время суток добрый. Часто возникает задача удалить в файле F: TextFile первую строку. Обычно перезаписывал файл без первой строки, да и все. Да вот задумался - неправильно как-то получается. Чтобы удалить одну строку, нужно извести кучу ресурсов (у меня в много потоков, плюс файлы не маленькие) - читаем файл в память, записываем опять на диск. Неужели у ОС нет средства сделать как-то попроще? В общем, окончательная формулировка вопроса такая: Как с наименьшими (в разумных пределах PS Кода, как обычно положено, не приведено ввиду специфики вопроса. |
| Автор: W4FhLF 24.12.2006, 10:13 | ||
Ну варианта у тебя 3, можешь конечно f.read f.seek и таким образом искать первый перенос или аналогичными API, а потом сдвигать всё содержимое файла, но я бы не парился, заюзал бы TStringList:
Затрудняюсь ответить как себя проявляет этот класс в этом случае, но до этого в подобных задачах TStringList показал себя как очень хорошо оптимизированный класс. Ещё в прицнипе можно использовать MMF, чуть позже пример приведу, бежать надо |