path: Главная\Статьи\Работа с файловой системой


язык:Turbo Pascal
автор:Timon PC
версия: 1.0

Встроенные типы модуля DOS для работы с файловой системой

ComStr = string[127]Командная строка
PathStr = string[79]Полный путь файла
DirStr = string[67]Логический диск или каталог
NameStr = string[8]Имя файла
ExtStr = string[4]Расширение, включая точку

Функции модуля DOS для работы с файловой системой

function Fexpand(path: PathStr): PathStr;


Расширяет имя файла до полного имени с указанием маршрута. Результатом обращения к этой функции вида Fexpand('Имя_Файла.pas') будет, например, строка 'c:\Timon\Имя_Файла.pas'. Нужно сразу заметить, что функция Fexpand() не проверяет данный файл на существование. Она лишь дописывает к своему параметру путь, по которому находится исполняемый файл. Как это можно использовать? Наверное разве, что узнать путь по которому была отинсталена (установленна) Ваша программа: path:= Fexpand('');

procedure FSpilit(path: PathStr, var dir: DirStr; var name: NameStr; var ext: ExtStr);


Процедура разбивает значение типа PathStr на компоненты. Например,
path:= 'd:\User\go.exe';
FSpilit(path, dir, name, ext);
После выполнения данного кода переменные будут содержать следуещие значения:
path | d:\User\go.exe
dir  | d:\User\
name | go
ext  | .exe
Однако тут то собака и зарыта! Дело в том, что даже если path:= '&&&&**--\23\go.exe', то dir = '&&&&**--\23\'. Ну а если файл имеет две точки (например go.4.exe), то ext приобретет значение первая точка + 3 следующих символа. В нашем случае это будет '.4.e'


MAFIA's Top100