
ҚР ДЕНСАУЛЫҚ САҚТАУ МИНИСТРЛІГІ С.Д.АСФЕНДИЯРОВ АТЫНДАҒЫ ҚАЗАҚ ҰЛТТЫҚ МЕДИЦИНА УНИВЕРСИТЕТІ |
|
МИНИСТЕРСТВО ЗДРАВООХРАНЕНИЯ РК КАЗАХСКИЙ НАЦИОНАЛЬНЫЙ МЕДИЦИНСКИЙ УНИВЕРСИТЕТ ИМЕНИ С.Д.АСФЕНДИЯРОВА |
Тема №27. Работа с файлами
Цель: Изучить способы работы с файлами в системе Delphi, общую технологию работы с файлами в Delphi, стандартные диалоговые окна Windows.
Задачи обучения: Формирование умений и навыков работы с файлами в системе Delphi, стандартными диалоговыми окнами Windows.
Организационная часть - 5 мин
Перекличка студентов и выяснение причин отсутствия студентов.
Количество формируемых компетенций: знания, практические навыки.
Основные вопросы темы: - 45 мин
Способы работы с файлами в системе Delphi.
Общая технология работы с файлами в Delphi.
Стандартные диалоговые окна Windows.
Панель Dialogs.
перерыв - 10 мин
Методы обучения и преподавания: деловые игры, ажурная пила.
Методы контроля формируемых на занятии компетенций:
тестирование проводится в компьютерной форме (студент должен ответить на «тест», содержащий в себе минимальные знания и навыки – основные определения, теоретические вопросы данной темы);
решение ситуационных задач (занятии студент должен выполнить индивидуальное задание: по получению определенных навыков, решению типовых задач);
Самостоятельная работа студентов - 50 мин
Освоение практических навыков: Решение типовых и ситуационных задач.
При работе с файлами в системе Delphi7 возможны два принципиально разных подхода. Первый состоит в использовании стандартных подпрограмм (они имелись еще в классической версии Паскаля тридцатилетней давности), позволяющих записывать содержимое переменных в файлы и считывать их обратно из файлов в переменные. К этим средствам добавились также библиотеки стандартных функций по работе с файлами, основанные на системных функциях Windows.
В связи с появлением версии Object Pascal и реализации понятия класса в языке появились средства объектной работы с данными. Это второй подход к работе с файлами в системе Delphi7. В свою очередь в рамках каждого из подходов применяются также существенно различающиеся приемы. Например, при классическом подходе в работе с файлами могут использоваться прямые обращения к функциям Windows или обращения к функциям BIOS.
Общая технология работы с файлами в Delphi7
Несмотря на все различия, независимо от используемого подхода технология работы с файлами в системе Delphi7 требует определенного порядка действий.
Прежде всего файл должен быть открыт. Это означает, что операционная система «дает добро» на внесение изменений в данный файл (например, на запись данных) и следит, чтобы обращения других пользователей и программ к этому файлу (если компьютер подключен к сети) выполнялись корректно. Так, считывание данных из файла, в который другой пользователь в этот момент вносит изменения, невозможно. При открытии файла системе управления файлами обычно сообщается, в каком режиме файл будет открыт: планируется ли вносить изменения в его содержимое или же файл открывается только для считывания из него данных. В последнем случае к файлу, как правило, могут обращаться и другие пользователи. Обычно указывается также, какова внутренняя структура открываемого файла – это требуется, чтобы выполнить операции с ним максимально быстро. После того как файл успешно открыт, в программу возвращается его идентификатор – переменная, которая будет использоваться для идентификации этого файла во всех процедурах обработки.
Начинается работа с файлом. Это может быть считывание из него данных, запись, поиск и другие операции.
Файл закрывается. Это означает, что он снова доступен другим приложениям без ограничений. Кроме того, закрытие файла гарантирует, что все внесенные в него изменения не пропадут, потому что для повышения скорости работы результаты промежуточных действий обычно сохраняются в специальных буферах операционной системы.
Файлы
Delphi позволяет сохранить результаты работы программы на диске компьютера, в файле, что дает возможность использовать эти данные для дальнейшей обработки, минуя процесс их ввода с клавиатуры.
Объявление файла
Файл - это именованная структура данных, представляющая собой последовательность элементов данных одного типа, причем количество элементов последовательности практически не ограничено. В первом приближении файл можно рассматривать как массив переменной длины неограниченного размера.
Как и любая структура данных (переменная, массив) программы, файл должен быть объявлен в разделе описания переменных. При объявлении файла указывается тип элементов файла.
В общем виде объявление файла выглядит так: Имя:file of Тип Элементов;
Примеры:
abc: file of char; // файл символов
flag: file of real; // файл вещественных чисел
f: file of integer; // файл целых чисел
Файл, компонентами которого являются данные символьного типа, называется символьным, или текстовым. Описание текстового файла в общем виде выглядит так:
Имя:TextFile;
где:
имя - имя файловой переменной;
TextFile - обозначение типа, показывающее, что Имя — это файловая переменная, представляющая текстовый файл.
Назначение файла
Объявление файловой переменной задает только тип компонентов файла. Для того чтобы программа могла выводить данные в файл или считывать данные из файла, необходимо указать конкретный файл, т. е. связать файловую переменную с конкретным файлом (задать имя файла).
Имя файла задается вызовом процедуры AssignFile, связывающей файловую переменную с конкретным файлом.
Описание процедуры AssignFile выглядит следующим образом:
AssignFile(var f, ИмяФайла: string)
Имя файла задается согласно принятым в Windows правилам. Оно может быть полным, т. е. состоять не только непосредственно из имени файла, но и включать путь к файлу (имя диска, каталогов и подкаталогов).
Ниже приведены примеры вызова процедуры AssignFile:
AssignFile(f, 'a:\result.txt');
AssignFile(f, '\students\ivanov\korni.txt');
fname:=('otchet.txt'); AssignFile(f,fname);