Изтриване на записи от файл

Тази операция може да бъде два вида:

а) логично заличава;

б) физическо отстраняване.

При изтриване на логически запис, всъщност не се изтрива. Вместо това, специален маркер: активен / пасивен запис. Логически заличаване - създаване атрибут за "пасивна". В този случай, на записа не се изтрива. В знак на проверени по време на обработката на файла, и се обработват само активен запис.

Когато създавате поле файл Ftel Акт всички записи има стойност True - записа "активно" (не е изтрит), т.е. програма по време на първоначалното пълнене съдържаща фрагмент:

Премахване на запис Num номер, както се извършва корекцията (Закон променя полето за съдържание е обърната):

При обработката на файл в този случай се нуждаете от допълнителна проверка за наличие (активността) на записа:

Ако не EOF (Ftel), след това

Когато физическото отстраняване на записа на нейно място нова информация се презаписва, т.е. запис изтрита. Тази операция се извършва съгласно схемата, показана на Фиг. 2.12, което показва заличаването на запис с номер 1.

Изтриване на записи от файл


Форма процедурата по отстраняване записва предварително определен брой Num на файл е. Трябва да се помни, че отстраняването е сведена до преброяване на населението след редица Num 1 място напред. След преброяването (или ако за отстраняване на последния запис е назначен наведнъж), файлът трябва да се намалят на използване на процедурата се съкрати и по този начин да го премахнете от последния запис. Спомнете си, че текущата позиция след операции на четене / запис във файла се премества към следващата точка.

Ние вярваме, че програмата е описано тип Ft = файла на Зап. Функцията на процедурата използвана FileSize (файла). Връща размера на файла. Описание на тази функция е дадена в следващия параграф (21.2.5).

Процедура RemoveF (Числа цяло число ;. Var Е. Ft);