![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 24.10.2009
Сообщений: 48
|
![]()
Нужно удалить строку из типизированого файла.
Какая функция єто делает? |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
никакая.
переисывайте в файле все строки начиная с удаляемой. и то это если файл простой текстовый(TextFile/Text) в Делфи можно использовать TStringList для этого. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 24.10.2009
Сообщений: 48
|
![]()
Да уже понял что никакая :/
Создал еще один файл(временный) такого же типа и записал в него все строки, кроме удаляемых. А потом rewrite и переписал все содержимое из временного в исходный. Подскажите ф-ю, колторая удаляет файл. п.с. Заучился) Что бы отправить сообщение нажал F9 :D |
![]() |
![]() |
![]() |
#4 |
Ищу работу
Форумчанин
Регистрация: 16.02.2007
Сообщений: 269
|
![]()
function DeleteFile(const FileName: string): Boolean;
Пишу на Delphi все что угодно, недорого, красиво, с комментариями
###icq 107335###
|
![]() |
![]() |
![]() |
#5 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
Цитата:
лучше действовать по такой схеме. 1) Все оставляемые записи записываем в новый файл. Закрываем его. (это то, что Вы и сделали). 2) текущий файл ПЕРЕИМЕНОВЫВАЕМ (например, с именем ВашФайл.BAK (если файл ВашФайл.BAK существует - его предварительно надо удалить) 3) новый файл (с оставленными записями - который мы создали) переименовываем в ВашФайл.ВашеРасширение всё! примерно это будет выгядеть так: Код:
В каждой записи заводят признак удалена запись или нет. Если запись удаляют, то НИЧЕГО никуда не переписывают, а просто изменяют этот признак. Записи с признаком удалённые не читаются/не выводятся/не обрабатываются программой. Т.е. пользователь их не видит. Но физически они есть. И в программе добавляется функция "Сжатия" - вот тогда срабатывает механизм с созданием нового файла, переписываем туда неудалённых записей, переименованиями и т.д.. |
||
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удалить из текстового файла первую строку. | annosinceva | Общие вопросы C/C++ | 1 | 31.05.2010 14:19 |
Как программно удалить одну строку из текстового файла(txt)? | lexus_samara | Общие вопросы Delphi | 6 | 24.04.2010 22:57 |
Удаление из типизированого файла | SnowSin | Помощь студентам | 1 | 06.12.2009 16:08 |
Удалить последнюю строку из файла | Flame_of_Death | Помощь студентам | 6 | 21.07.2009 13:48 |
помогите удалить строку и столбец в Delphi | ЛесенОК | Помощь студентам | 4 | 01.02.2009 19:30 |