Функция FileSplit()

Модуль DOS

Разбивает имя файла на три его составляющие.

Объявление:

Function FileSplit(Path, Dir, Name, Ext : PChar) : Word

Режим:

Windows, Real, Protected

Замечание:

Разбивает имя файла, определенное в переменной Path на три компонента: - Параметр Dir равняется пути к файлу, включая диск и каталоги с любыми начальными и конечными левыми наклонными чертами - Параметр Name равняется имени файла - Параметр Ext раняется расширению файла с предшествующей точкой Если строковый параметр компонента равен NIL, то соответствующая часть пути не сохраняется. Если путь не содержит данный компонент, то полученная строка компонента будет пустой. Максимальные длины строк, возвращенных в параметрах Dir, Name и Ext определяются константами fsDirectory, fsFileName и fsExtension. Возвращаемое значение - комбинация констант fcDirectory, fcFileName и fcExtension, указывающая на то, какие компоненты были представлены в пути. Если имя или расширение содержит любые символы масок (* или ?), то в возвращаемом значении устанавливается флаг fcWildcards.

Пример:

{Пример программы для FileSplit Function}

Uses Strings, WinCrt, WinDos;

Var Path : Array [0..fsPathName] Of Char;
     Dir : Array [0..fsDirectory] Of Char;
    Name : Array [0..fsFileName] Of Char;
     Ext : Array [0..fsExtension] Of Char;

Begin
 Write('Имя файла (WORK.PAS): ');
 ReadLn(Path);
 FileSplit(Path, Dir, Name, Ext);
 If Name[0] = #0 Then StrCopy(Name, 'WORK');
 If Ext[0] = #0 Then StrCopy(Ext, '.PAS');
 StrECopy(StrECopy(StrECopy(Path, Dir), Name), Ext);
 WriteLn('Полученное имя : ', Path);
End.