Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
P_LAB_12_Работа с файлами.doc
Скачиваний:
0
Добавлен:
06.05.2019
Размер:
80.38 Кб
Скачать

Волгоградский государственный педагогический университет

Кафедра общей физики

Информатика Часть 2

Основы программирования на языке PASCAL

Лабораторная работа №12

Работа с файлами

Волгоград

2007

Составитель: Глазов С.Ю., доцент кафедры общей физики ВГПУ

Информатика. ч.2. Основы программирования на языке Pascal. Лабораторная работа №12

Работа с файлами

2007.

Лабораторная работа №12

Основы программирования на языке PASCAL

Работа с файлами.

Цель работы: изучить основные принципы работы с файлами и каталогами в Object Pascal; научиться использовать Ini – файлы для сохранения настроек программ.

Различают файлы трех видов: текстовые файлы, типизированные файлы и нетипизированные файлы.

Алгоритм работы с файлами:

  1. Открыть файл.

  1. Связать файловую переменную с конкретным файлом на диске.

  2. Указать для файла направление передачи данных (инициировать файл).

  1. Читать или записывать данные файла.

  2. Закрыть файл.

Файлы становятся доступны программе только после выполнения процедуры

AssignFile (var F : <тип файла>; FileName: string), которая связывает имя внешнего файла FileName с файловой переменной F.

Пример:

var FText : TextFile; {описание файловой переменной текстового файла}

FTip : File of integer;{описание переменной типизированного файла }

FNotTip : File; { описание переменной нетипизированного файла }

begin

AssignFile(FText,’c:\result.txt’);

AssignFile(FTip,’c:\int.dat’);

AssignFile(FNotTip,’c:\data.dat’);

...

Текстовые файлы

Текстовые файлы состоят из последовательностей символов, разбитых на строки. В Object Pascal предопределен тип TextFile, соответствующий текстовому файлу и объявление файловой переменной имеет вид:

var <имя файловой переменной> : TextFile;

Работа с текстовыми фалами осуществляется процедурами и функциями файлового ввода/вывода. Основные процедуры чтения - Read, Readln, Write и Writeln.

Append (var F: TextFile) - Открывает существующий текстовый файл, связанный с файловой переменной F, для добавления в его конец.

ChDir(S: string) - изменяет текущий каталог на заданный параметром S.

CloseFile( Var F) - закрывает открытый файл, связанный с файловой переменной F.

Eof(var F) : Boolean - возвращает true при достижении конца файла, связанного с файловой переменной F.

Eoln(var F: Text): Boolean - возвращает признак конца строки (true) в текстовом файле, связанном с файловой переменной F.

Erase(var F) - удаляет внешний файл, связанный с файловой переменной F.

FilePos(var F): Longint - возвращает текущую позицию типизированного или нетипизированного файла, связанного с файловой переменной F. Позиция, соответствующая началу файла - 0.

FileSize( var F):Integer - возвращает текущий размер файла, связанного с файловой переменной F . Не используется для текстовых файлов.

Flush(var F: Text) - очищает буфер выходного текстового файла, связанного с файловой переменной F.

GetDir - возвращает S - текущий каталог диска, указанного параметром D, который может равняться: 0 - текущий диск, 1 - диск A, 2 - диск B, 3 - диск C и т.д. Каталог заносится в S без заключительного символа слэш, например, "c:\mydir".

IOResult : Integer - возвращает целое значение, характеризующее код ошибки выполнение последней операции ввода/вывода.

MkDir(S : String) - создает подкаталог, заданный с полным путем параметром S.

Read(F, <список переменных>) - читает из файла, связанного с файловой переменной F, одно или более значений в одну или более переменных.

Readln(var F: Text; <список переменных>) - читает одно или более значений в одну или более переменных и переходит на начало следующей строки текстового файла, связанного с файловой переменной F.

Rename(var F; Newname) - переименовывает внешний файл, связанный с файловой переменной F, давая ему имя Newname. Переименование может сочетаться с переносом в другой каталог и на другой диск, если в Newname указан полный путь к переименованному файлу.

Reset(var F [: File;RecSize: Word]) - открывает существующий файл, связанный с файловой переменной F. Параметр RecSize задается для нетипизированных файлов и устанавливает длину записи в байтах (по умолчанию 128).

Rewrite(var F: File [; Recsize:Word]) - создает и открывает новый файл, связанный с файловой переменной F. Параметр RecSize задается для нетипизированных файлов и устанавливает длину записи в байтах (по умолчанию 128).

RmDir(S : String) - удаляет пустой подкаталог, заданный параметром S.

Seek(var F; N: Longint) - перемещает текущую позицию в типизированном или нетипизированном файле, связанном с файловой переменной F, в позицию N. Для текстовых файлов не используется.

SeekEof ( Var F: Text) : Boolean - Возвращает true при достижении конца текстового файла, связанного с файловой переменной F.

SeekEoln ( Var F: Text) : Boolean - Возвращает true при достижении конца строки текстового файла, связанного с файловой переменной F.

SetTextBuf(Var F: Text; Var Buf [; Size: Integer]) - связывает буфер ввода/вывода Buf размера Size (задавать не обязательно) с текстовым файлом, связанным с файловой переменной F.

Truncate(var F) - Усекает типизированный или нетипизированный файл, связанный с файловой переменной F, на текущей позиции.

Write(var F; <список выражений>) - записывает одно или более значений в файл, связанный с файловой переменной F.

Writeln(var F: Text;<список Выражений >) - записывает одно или более значений в файл и затем заносит маркер конца строки в текстовый файл, связанный с файловой переменной F.