Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Узнать, лежит ли в папке файл или подпапка.


Андрей Молчанов ©   (2005-08-08 18:45:00) 

Имеется путь к файлу C:\My folder\Images\image.jpg (например). Как узнать, лежит ли он в папке C:\My folder? В данном случае лежит.


Андрей Молчанов   (2005-08-08 19:31:00) [1]

В общем, я понял - специальной функции нету :(
Ну чтож, буду пользоваться при помощи Pos. Спасибо всем ответившим. :)

Кстати, может кто-то знает, как можно оптимизировать цикл в http://www.delphimaster.ru/cgi-bin/forum.pl?id=1123510283&n=0?


Alexander Panov   (2005-08-08 19:25:00) [2]

Ты неправильно понял. Вопрос был такой: является ли один каталог подкаталогомдругого?


Kolan   (2005-08-08 19:20:00) [3]


> Имеется путь к файлу C:\My folder\Images\image.jpg

Те тут лежит файл?


> Как узнать, лежит ли он в папке C:\My folder

Те надо узнать лежит ли этот файл и в этой папке. Так?


Андрей Молчанов   (2005-08-08 19:16:00) [4]

Вот этот код работать как раз не будет:
'C:\My folder\'+FileName равен 'C:\My folder\image.jpg', а существует файл 'C:\My folder\Images\image.jpg'.


Kolan   (2005-08-08 19:14:00) [5]

FileName := ExtractFileName('C:\My folder\Images\image.jpg');

{FileName будет 'image.jpg'}

if FileExists('C:\My folder\'+FileName) then
 Result := True
else
 Result := False;


Я не понял вопрос?


Андрей Молчанов   (2005-08-08 19:12:00) [6]


> Насколько я знаю, такого нет.

Жаль придется юзать этот.

Кстати, если кто-то еще будет его использовать, то:
if pos(IncludeTrailingPathDelimiter('C:\My folder\'),'C:\My folder\Images\image.jpg')=1 then
Лежит
Else
нет


begin...end   (2005-08-08 19:07:00) [7]

> Андрей Молчанов   (08.08.05 19:04) [4]

> хотелось бы какого нибудь более стандартного способа

Насколько я знаю, такого нет.

> Кстати, если использовать этот, то скорее лучше в виде...

Верно.


Андрей Молчанов   (2005-08-08 19:04:00) [8]


> alex-drob ©

Это я понимаю, но все таки хотелось бы какого нибудь более стандартного способа.

Кстати, если использовать этот, то скорее лучше в виде:
if pos('C:\My folder\','C:\My folder\Images\image.jpg') =1then
Лежит
Else
нет


alex-drob   (2005-08-08 18:58:00) [9]

if pos('C:\My folder\','C:\My folder\Images\image.jpg'')<>0 then
Лежит
Else
нет


Андрей Молчанов   (2005-08-08 18:54:00) [10]

Есть путь и имя объекта (файлу или папке) - например, в случае с файлом C:\My folder\Images\image.jpg. И есть путь к другой папке. Как узнать, находится ли первый объект внутри второй папки?


begin...end   (2005-08-08 18:50:00) [11]

Переформулируйте вопрос.


Наверх

Титульная страница Поиск, карта сайта Написать письмо