![]() |
|
Модераторы: volvo877, Snowy, MetalFan |
![]()
|
|
| SapFira |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 9.4.2007 Репутация: нет Всего: нет |
Вот программа,кот.формирует файл из имени актера и фильма,а потом выполняет поиск фильма по имени актера. Помогите доделать ее так,чтобы когда найдет эти данные, удалила их и затем вывела на экран содержимое файла.
uses crt; type TActor = record fio: string[20]; film: string[30]; end; type TActorsFile = file of TActor; var af: TActorsFile; filename: string; i,j: integer; actor: TActor; film: string; f: file; begin clrscr; write('ВВод the filename: '); readln(filename); writeln('Now, enter the names of actors and their films,'); writeln('to stop entering enter nothing in the actor name'); assign(af, filename); rewrite(af); repeat write('Ввод актера: '); readln(actor.fio); if actor.fio <> '' then begin write('Ввод фильма: '); readln(actor.film); write(af, actor); end; until Actor.fio = ''; close(af); writeln; write(Ввод фильма для поиска актера: '); readln(film); assign(af, filename); reset(af); while not eof(af) do begin read(af, actor); if actor.Film = film then begin writeln('Film: ', actor.film); writeln('Actor: ', actor.fio); end; end; close(af); writeln('Press any key to continue...'); readkey; end. |
|||
|
||||
| ama_kid |
|
|||
![]() АСУТП-кодер ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1460 Регистрация: 5.3.2007 Где: Москва Репутация: нет Всего: 95 |
Вот примерный код, который поможет тебе удалить заданную позицию из твоего файла:
-------------------- самурай без меча подобен самураю с мечом, но только без меча |
|||
|
||||
| SapFira |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 9.4.2007 Репутация: нет Всего: нет |
а после чего ее вставить надо? и как написать: DeletePos( ???? ), что должно быть в скобках?
|
|||
|
||||
| ama_kid |
|
|||
![]() АСУТП-кодер ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1460 Регистрация: 5.3.2007 Где: Москва Репутация: нет Всего: 95 |
Когда находишь необходимую запись - запоминаешь позицию в файле (CurPos:=FilePos(file);) закрывай его и вызывай DeletePos('C:\actors.txt', CurPos);
После этого можешь спокойно выводить файл на экран -------------------- самурай без меча подобен самураю с мечом, но только без меча |
|||
|
||||
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
А что если в файле несколько актеров с одним именем, тогда что уж, одного удалять. Наверное тогда нужно удалять всех. А тут получается что удаляется только первый. |
|||
|
||||
| SapFira |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 9.4.2007 Репутация: нет Всего: нет |
А еще проблема, как выводить на экран содержимое файла??
|
|||
|
||||
| Fighter |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
Ну так, в первом примере есть вывод на экран.
В данном случае этот код выводит содержимое файла, если выполняется какое-либо условие. Но, если нам нужно вывести весь файл, то нам достаточно просто удалить это условие, и тогда на экран выведется все содержимое файла. Например, вот так:
|
||||
|
|||||
| SapFira |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 9.4.2007 Репутация: нет Всего: нет |
Все равно не получается с удалением того что найдется..Не могли бы вы подсказать как и куда вставлять эту процедуру(DeletePos)
|
|||
|
||||
![]()
|
| Правила форума "Delphi" | |
|
|
Запрещается! 1. Обсуждать и делится взломанными компонентами или программным обеспечением 2. Публиковать ссылки на варез 3. Оффтопить
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |