Лекция: Использование индекса для операций над файлом с произвольным доступом.
Для удобства работы с файлом его упорядочивают (сортируют), т.е. переставляют записи файла так, чтобы значения какого-нибудь поля были расположены в алфавитном порядке, а если значение поля числовое — в порядке его возрастания или убывания. Такое поле называется ключом сортировки.
В качестве ключа сортировки можно выбрать как одно поле, так и объединение полей. Однако во многих случаях лучшим решением проблемы является введение специального поля (идентификационного номера записи). Это обычно число, которое однозначно определяет запись.
Чтобы представить записи файла в упорядоченном виде, вместо сортировки всего файла удобнее поступить следующим образом:
1. создать индекс — множество коротких записей. Каждая короткая запись состоит только из двух полей- Ключа и НомераЗаписи. НомеромЗаписи служит номер длинной записи файла;
2. затем отсортировать этот индекс по возрастанию (или убыванию) Ключа;
3. выдать длинные записи файла в том порядке, в каком будут расположены их короткие представители в индексе после сортировки.
Дополним предыдущий пример сортировкой файла с произвольным доступом. Ключом сортировки будет объединение полей: Фамилия и Имя.
Объявим индекс:
Private Type ТипИндекса
ФамилияИмя As String*25
НомерЗаписи As Integer