Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Delphi.Начало.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.56 Mб
Скачать

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

Текстовые файлы занимают промежуточное положение между типизированными и нетипизированными файлами и предназначены для обработки строк, которые с одной стороны описываются базовым типом String, а с другой не имеют фиксированной длины. В таких случаях считывание и запись происходят построчно, причем символы перевода строки и возврата каретки используются как управляющие. Для этих файлов используются две процедуры, явно осуществляющие ввод и вывод с новой строки ReadLn и WriteLn. При этом размер считанной строки определяется автоматически, по наличию управляющих символов, которые в строку не записываются. Если применять процедуры Read и Write без элемента Ln, означающего перевод на новую строку, то считывание и запись текста производится сплошным потоком.

Набор подпрограмм для работы с текстовыми файлами в Delphi приведен ниже.

Подпрограмма

Назначение

procedure Append(var F: Text);

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

procedure AssignPrn(var F: Text);

Вся информация, записываемая в файл, перенаправляется на принтер. Файл должен быть открыт с помощью процедуры Rewrite.

function Eoln [(var F: Text) ]: Boolean;

Возвращает true, если текущая позиция в файле расположена либо в конце файла, либо в конце строки. Может использоваться вместе с проце­дурой Read, не переходящей к началу следующей строки автоматически.

procedure Erase(var F);

Удаление файла. Файл должен быть определен с помощью процедуры AssignFile, но не должен быть открыт.

function Flush(var t: Text): Integer

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

function SeekEof [ (var F: Text) ]: Boolean;

Возвращает true, если текущая позиция располо­жена в конце файла

function SeekEoln [ (var F: Text) ]: Boolean;

Возвращает true, если текущая позиция располо­жена в конце строки

procedure SetTextBuf(var F: Text; var Buf [ ; Size: Integer] );

Задает размер буфера для операций ввода\вывода с текстовыми файлами(параметр Size). Этот бу­фер расположен внутри программы. Он указы­ва­ет­ся в качестве второго параметра. Это может быть, например, массив символов.

Конец файла

При обработке файла часто возникает необходимость определить его конец. Для этого используется функция Eof, которая имеет единственный параметр – файловую переменную. Функция Eof возвращает True, если конец файла достигнут, и False в противном случае. При использовании функции Eof необходимо помнить, если она вернула True, то дальнейшее считывание приведет к ошибке.

Стандартные подпрограммы для работы с файлами и каталогами

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

Подпрограмма

Назначение

procedure ChDir(const S: string);

Задать текущий каталог в соот­вет­ст­вии с путем, заданным параметром S.

procedure MkDir(const S: string);

Создать каталог, путь к которому задан в переменной S.

function CreateDir(const Dir: string): Boolean;

Создать каталог, путь к которому задан в переменной Dir.

function DeleteFile(const FileName: string): Boolean;

Удалить файл, путь к которому задан в параметре FileName.

function DirectoryExists(const Directory: string):

Boolean;

Проверить существует ли каталог, за­дан­ный параметром Directory.

function FileExists(const FileName: string):

Boolean;

Проверить существует ли файл, путь к которому задан параметром FileName.

function GetCurrentDir: string;

Возвращает имя текущего каталога.

procedure GetDir(D: Byte; var S: string);

Для диска, заданного параметром D (0- A, 1 – C, 2 – D и так далее), записывает в переменную S полный путь поиска текущего каталога этого диска

function RemoveDir(const Dir: string): Boolean;

Удалить пустой каталог, путь к которому задан переменной Dir

function RenameFile(const OldName, NewName: string): Boolean;

Файл OldName получает новое имя NewName

function SetCurrentDir(const Dir: string): Boolean

Сделать текущим каталог, путь к кото­рому задан параметром Dir.

Function FilePos(var F): Longint;

Возвращает номер текущей позиции в файле, нумерация с нуля.

Function FileSize(var F): Integer;

Возвращает число записей в файле или его размер в байтах.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]