русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Стандартные процедуры и функции


Дата добавления: 2013-12-23; просмотров: 1584; Нарушение авторских прав


Var

Var

Туре

Определение файлового типа

Общие сведения

Определение файлового типа, типы файлов

Типизированные файлы.Файлы последовательного доступа

Стандартные процедуры и функции

Определение файлового типа, типы файлов

Файловые типы данных

Лекция 1

В практике программирования часто встречаются задачи, решение которых носит регулярный характер и требует большого количества относительно мало изменяемых во времени данных. К ним относятся, например, задачи бухгалтерского учета, оптимального планирования и многие другие. Ввод данных с экрана заново при каждом счете для этих задач очень трудоемок, а часто просто невозможен из-за временных ограничений. Для решения этой проблемы в языках программирования была реализована концепция файлов, что позволяет после набора информации на клавиатуре запоминать ее на магнитном носителе и обращаться к ней непосредственно из обрабатывающих программ при каждом счете.

Файл - это поименованная область данных на внешнем носителе, предназначенная для хранения информации. Файл может быть связан с любым источником или потребителем информации: клавиатурой, принтером, магнитным диском, коммутационным каналом и др. Мы будем рассматривать только стандартные файлы языка ПАСКАЛЬ и дисковые файлы, созданные пользователем, как имеющие самое широкое применение при работе на ПЭВМ ЕС.

Стандартные файлы определены разработчиками системы, и проблемные программисты могут их только использовать.

Файлы пользователя размещаются на внешних носителях. В файлах могут храниться программы, данные, тексты документов, инструкций, закодированные изображения и т. п. Файл может быть входным или выходным. Из входного файла программа получает данные, в выходной файл выводит их. Каждый файл имеет имя, которое зарегистрировано в директории (оглавлении диска). С помощью команд операционной системы и процедур языка ПАСКАЛЬ содержимое директория можно вывести на экран, расширить, изменить имена и выполнить некоторые другие действия.




 

Файл с точки зрения языка ПАСКАЛЬ - это структурированный тип данных, состоящий из последовательности компонентов одного типа и одной длины.

Файловый тип или переменную файлового типа можно задать одним из трех мпособов.

 

Формат:

n <имя> = File of <тип>;

n <имя> = Text;

n <имя> = File;

 

<идентификатор>: <имя типа>;

Здесь

<имя> - имя файлового типа;

File, of –зарезервированные слова (файл, из);

Text –имя стандартного типа текстовых файлов;

<тип> - любой тип Turbo Pascal, файлового.

 

В зависимости от способа объявления выделяются три вида файлов: типизированные, текстовые и нетипизированные.

 

Например.

Туре

кarta = File of record

dlina: byte;

ves: real

end;

text80 = File ofstring [80];

f 1 : File ofchar;

f 2 : text;

f 3 :File;

f 4 : text80;

f 5 :File ofкarta;

 

В примере

f 1, f 4, f 5 – типизированные;

f 2 - текстовый;

f 3 – нетипизированный.

 

Переменные файлового типа нельзя использовать в выражениях. Файл хранится во внешней памяти на магнитном диске, и по мере необходимости данные из файла вызываются в оперативную память для обработки.

Доступ к компонентам файла осуществляется через указатель файла (буферную переменную). При чтении или записи этот указатель перемещается к следующему компоненту и делает его доступным для обработки. Буферная переменная имеет отличие от всех других переменных: она не может участвовать в выражениях и операторах присваивания.

Рассматриваемая версия языка ПАСКАЛЬ предусматривает два способа доступа к компонентам файла: последовательный и произвольный (прямой). Это разделение вызвано наличием устройств с последовательным и прямым доступом. При последовательном способе доступа поиск начинается с начала файла и проверяется по очереди каждый компонент, пока не будет найден нужный. Произвольный способ доступа позволяет обращаться к компоненту по его порядковому номеру в файле. Допускается значительная гибкость при работе с файлами. Например, компоненты последовательно организованного файла могут обрабатываться произвольно, а компоненты произвольного файла - последовательно. Однако с самого начала на основе анализа структуры данных и существующих ограничений следует четко уяснить, какой способ доступа к компонентам необходимо выбрать. От этого во многом зависит успех решения задачи и эффективность работы соответствующей программы.

 

Assign (FV, Str) - присвоить имя файлу.

Имя файла, которое является значением Str, присваивается переменной файлового типа FV. С момента выполнения этой процедуры все действия над этой переменной будут эквивалентны действиям над файлом, определяемым значением Sir.

Rewrite (FV) - создать новый файл.

Эта процедура служит для создания нового файла на диске. Имя файла было предварительно определено в процедуре Assign. Если на диске уже был файл с таким именем, он уничтожается. Указатель файла устанавливается в первую позицию (с номером 0). Фактически файл не содержит ни одного компонента, он только подготовлен для загрузки.

Reset (FV) - установить указатель в начало файла.

Выполнение процедуры обеспечивает установку указателя файла на первый компонент. Если эта процедура применена к несуществующему файлу, возникает ошибка ввода-вывода.

Read (FV, xl, x2,... , xn) - читать из файла.

Производится чтение из дискового файла, определенного файловой переменной FV значений xl, x2,... , xn. После завершения выполнения процедуры указатель перемещается на следующий компонент.

Write (FV, xl, x2,... , xn) - записать в файл.

Переменные xl, x2,... , xn записываются в дисковый файл, определенный переменной FV. После выполнения процедуры указатель перемещается к следующему компоненту.

Seek (FV, n) - установить указатель на компонент с порядковым номером n в файле.

Указатель перемещается к компоненту с номером п, начиная счет с нуля, т.е. первый компонент имеет номер 0, второй - 1, третий - 2 и т. д.

Flush (FV) - очистить буфер сектора.

Выполнение процедуры вызывает выталкивание внутреннего буфера в файл, если ранее выполнялись операции записи. Фактически происходит очистка буфера только текстового файла. К закрытому файлу процедура Flush не применяется.

Close (FV) - закрыть файл.

Выполнение процедуры обеспечивает закрытие файла, назначенного переменной FV. Если файл был открыт, никогда не следует выходить из программы, предварительно не закрыв его.

Erase (FV) - уничтожить файл.

Выполнение процедуры вызывает уничтожение файла, назначенного переменной FV. Если производится уничтожение открытого файла, его необходимо предварительно закрыть с помощью процедуры Close.

 

Rename(FV, Str) - переименовать файл. Выполнение процедуры вызывает занесение в каталог диска (директорий) нового имени файла, определенного переменной FV. Новое имя определяется значением Str.

 

Truncate (FV) - уничтожить все компоненты файла, начиная с места текущего положения указателя, и подготовить файл для записи.

 

 



<== предыдущая лекция | следующая лекция ==>
Вывод в файл | Файлы последовательного доступа.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.328 сек.