09.07.2017, 20:41
|
Прохожий
|
|
Регистрация: 09.07.2017
Сообщения: 2
Версия Delphi: Delphi 7
Репутация: 10
|
|
Помогите с фунуцией
Помогите разработать описание функции.
Код:
function FormatFilePath(FilePath, Mask: String): String;
var
Disc, Directory, FileName, Extension: String;
begin
// Удалить ведущие и хвостовые пробелы
FilePath := Trim(FilePath);
try
// В полном имени файла FilePath найти:
// 1) имя диска (не работает, если FilePath - сетевой путь)
Disc := GetFirstRegExpMatch(FilePath, '^([A-Z]{1}):\\');
// 2) директорию
Directory := GetFirstRegExpMatch(FilePath,
'^[A-Z]{1}:\\(.*)\\[^\\]+');
// 3) имя файла
FileName := GetFirstRegExpMatch(FilePath,
'^[A-Z]{1}:\\.*\\([^\\]+)\.[^\.\\]+$');
// 4) расширение файла
Extension := GetFirstRegExpMatch(FilePath,
'^[A-Z]{1}:\\.*\\[^\\]+\.([^\.\\]+)$');
except
// Если полное имя файла задано не верно, вернуть пустую строку
Result := '';
Exit;
end;
// Скомпоновать полученные значения (диск, директорию, имя файла и расширение)
// в строку, как указано в маске Mask
Result := Mask;
// Заменить %D на имя диска
Result := Replace(Result, '%D', Disc);
// Заменить %P на путь
Result := Replace(Result, '%P', Directory);
// Заменить %N на имя файла
Result := Replace(Result, '%N', FileName);
// Заменить %E на расширение
Result := Replace(Result, '%E', Extension);
end;
lmikle: Пользуемся тегами!
|