- •Часть 2
- •Лабораторная работа № 6. Программирование циклических вычислительных процессов. Итерационные циклы
- •Отладка модулей проекта
- •Отладка синтаксических ошибок
- •Отладка логических ошибок
- •Итерационные циклы
- •Текст модуля UnIterate
- •Пример создания приложения
- •Сохранение проекта
- •Размещение компонентов на Форме
- •6.4. Выполнение индивидуального задания
- •Лабораторная работа № 7. Программирование с использованием строк
- •Краткие теоретические сведения
- •7.1.1. Символьные типы
- •7.1.2. Строковые типы
- •7.1.3. Процедуры и функции для работы со строками
- •Применение компонентов ListBox и ComboBox для работы со строками
- •7.3. Пример создания приложения
- •7.3.1. Сохранение проекта
- •7.3.2. Размещение компонентов на Форме
- •7.3.3. Создание процедуры-обработчика события активизации Формы FormActivate.
- •7.3.4. Создание процедуры-обработчики события ComboBox1KeyPress
- •7.3.5. Создание процедуры-обработчики события нажатия клавиши «мыши» ComboBox1Click
- •7.3.6. Работа с приложением
- •7.4. Текст модуля UnStr
- •7.5. Выполнение индивидуального задания
- •С использованием записей
- •8.1. Краткие теоретические сведения
- •8.2. Пример создания приложения
- •8.2.1. Указания по созданию приложения
- •8.2.2. Размещение компонентов по Форме
- •8.2.3.Создание процедур обработки событий FormCreate и ButtonClick
- •8.2.4. Работа с приложением
- •8.2.5. Текст модуля UnZap
- •8.3. Выполнение индивидуального задания
- •Лабораторная работа № 9. Програмирование с использованием файлов
- •9.1. Краткие теоретические сведения
- •9.2. Пример создания приложения
- •9.2.1. Указания по созданию приложения
- •9.2.2.Размещение компонентов по Форме.
- •9.2.3.Создание процедур обработки событий
- •9.2.4. Текст модуля UnFile
- •9.2.5. Работа с приложением
- •9.3. Выполнение индивидуального задания
- •Лабораторная работа № 10. Программирование с использованием функций и процедур. Процедурные типы. Создание модулей
- •10.1. Краткие теоретические сведения
- •10.1.1. Объявление и описание функций и процедур
- •10.1.2. Различные варианты передачи параметров в функции и процедуры
- •10.1.3. Процедурные типы
- •Текст модуля UnFancProc
- •Текст модуля UnModul
- •Выполнение индивидуального задания
- •Лабораторная работа № 11. Программирование с использованием динамических структур данных
- •11.1. Краткие теоретические сведения
- •11.1.1. Указатели
- •11.2. Использование динамических переменных
- •Пример создания приложения
- •11.3.1. Сохранение проекта
- •Размещение компонентов на Форме
- •11.3.3. Создание процедуры обработки событий FormCreate
- •Текст модуля UnDinMas
- •11.5. Выполнение индивидуального задания
- •Лабораторная работа № 12. Программирование с использованием средств для построения и отображения графиков
- •12.1. Методика построения графиков с помощью компонента tChart
- •12.2. Пример написания программы
- •12.2.1. Настройка формы
- •12.2.2. Работа с компонентом tChart
- •12.2.3. Написание программы обработчика события создания формы
- •12.2.4. Написание программ обработчика событий нажатия на кнопки
- •12.3. Модуль программы построения и отображения графиков
- •12.4. Выполнение индивидуального задания
- •Приложение 1 п1. Свойства и методы компонентов п1.1. Общие свойства компонентов
- •2. Компоненты страницы standard
- •3. Компоненты страницы additional
- •4. Компоненты страницы dialogs
- •П2. Простые типы данных языка object pascal
- •П3. Процедуры и функции для работы со строками
- •Литература
Лабораторная работа № 9. Програмирование с использованием файлов
Цель работы: изучить процесс организации и обработки файлов в языке Object Pascal, освоить применение компонентов OpenDialog и SaveDialog.
9.1. Краткие теоретические сведения
Для организации данных на внешнем носителе используются файлы. Файл – это поименованная совокупность логически связанных данных, хранящихся на запоминающем устройстве компьютера.
Object Pascal располагает средствами создания и обработки файлов различных типов. Для того чтобы получить доступ к файлу, нужно иметь возможность связать созданное в Delphi приложение с некоторым файлом для чтения или записи информации. Эта связь создается при помощи переменных файлового типа - файловых переменных.
В Object Pascal существует три файловых типа:
TextFile – текстовый файл, представляющий собой набор символьных строк переменной длины;
File of <тип> – типизированный файл, представляющий собой набор данных указанного типа;
File – нетипизированный файл, представляющий собой набор неструктурированных данных.
Рассмотрим некоторые приемы работы с типизированными файлами.
Перед использованием файловой переменной она должна быть связана с внешним файлом с помощью вызова процедуры AssignFile:
AssignFile (<файловая переменная>, <имя файла>);
Здесь <файловая переменная> – имя переменной, объявленной в программе как переменная файлового типа;
<имя файла> – символьная строка, содержащая имя файла.
Если файл располагается не в одной папке с программой, то необходимо указать полный путь к файлу.
Когда связь с внешним файлом установлена, его можно открыть для ввода или вывода данных с помощью процедуры Reset:
Reset (<имя файла>);
Эта процедура открывает существующий внешний файл, имя которого было связано с файловой переменной.
Новый файл можно создать и открыть для записи с помощью процедуры Rewrite:
Rewrite(<файловая переменная>);
Последовательный доступ к записям файла осуществляется с помощью процедур Read и Write.
Read (<файловая переменная>, список ввода) чтение записи файла.
Write (<файловая переменная>, список вывода) вывод записи в файл.
Список ввода и список вывода должны иметь данные того же типа, что и компоненты файла.
Прямой доступ к типизированным файлам можно организовать с помощью стандартной процедуры Seek, которая перемещает указатель файла к заданному элементу. Для определения текущей записи в файле и текущего размера файла используются стандартные функции FilePos и FileSize.
Procedure Seek (var F; N; Longint); перемещает текущую позицию в типизированном файле, связанном с файловой переменной F к компоненту с номером N. Нумерация компонентов в файле начинается с 0.
function FilePos (var F): Longint; Возвращает номер текущего компонента в файле, связанном с файловой переменной F.
function FileSize (var F): Integer; Возвращает количество компонентов в файле, связанном с файловой переменной F.
По завершении обработки файла он должен закрываться с помощью стандартной процедуры CloseFile.
CloseFile (<файловая переменная>);
При закрытии файла обеспечивается сохранение в файле всех новых записей и регистрация файла в папке. Процедура CloseFile не разрывает связь файла с файловой переменной, поэтому файл можно открывать снова без повторного использования процедуры AssignFile.
