![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Поиск в поткаталогах
snake-as © (2008-11-29 17:45:00)Здравствуйте, мастера. Подскажите, пожалуйста, как решить такую задачу. Есть папка main, например. Есть в этой папка еще папки. dir1, dir2, dir3(причем я не знаю, как эти папки называются). У меня есть имя файла. Мне нужно его найти в папке main. Причем он можут быть в одной из этих подпапок. Как мне организовать этот поиск и как узнать, где находится файл, в корне или в подпапке. Заранее спасибо!
Anatoly Podgoretsky (2008-11-29 19:37:00) [1]> Slym (29.11.2008 19:30:18) [18]
Пускай лучше лезет в FAQ например на моем сайте, там есть прекрасный пример.
Slym (2008-11-29 19:30:00) [2]Anatoly Podgoretsky © (29.11.08 19:25) [17]
незабудь напомнить про проверку на "каталожность"
а то будет маяться if sr.Attr=faDirectory then... (неправильно)
Anatoly Podgoretsky (2008-11-29 19:25:00) [3]> snake-as (29.11.2008 19:07:16) [16]
Стой, куда, смени аттрибуты на faAnyFiles, а то не увидишь все каталоги.
snake-as (2008-11-29 19:07:00) [4]Понял. Думал это и есть фильтр. Тогда не проблема сделать фильтрацию. Спасибо! Пойду учить инглиш, чтобы нормально понимать документацию.
Anatoly Podgoretsky (2008-11-29 19:01:00) [5]> snake-as (29.11.2008 18:46:13) [13]
А где у тебя фильтрация каталог/не каталог?
Ты сам заказал отображать все файл + почти все каталоги
Anatoly Podgoretsky (2008-11-29 18:59:00) [6]> snake-as (29.11.2008 18:35:11) [11]
А что ты сделал, что бы отображало/не отображало?
snake-as (2008-11-29 18:46:00) [7]Memo1.Clear;
if FindFirst('C:\*.*', faDirectory, sr) = 0 then
begin
Memo1.Lines.Add(sr.Name);
while FindNext(sr) = 0 do
Memo1.Lines.Add(sr.Name);
end;
FindClose(sr);
Хочу отобразить все подкаталоги в папке. Но, почему-то он отображает все файлы, даже системные и скрытые.
Тын-Дын (2008-11-29 18:38:00) [8]
> почему FindFirst('C:\*.*', faDirectory, sr) не отображает
> директорию?
Какой каталог не отображает и где?
snake-as (2008-11-29 18:35:00) [9]Спасибо! Скажите, а все-таки, почему FindFirst('C:\*.*', faDirectory, sr) не отображает директорию?
Anatoly Podgoretsky (2008-11-29 18:32:00) [10]> snake-as (29.11.2008 18:23:07) [7]
Очень плохо, оказывается даже искать не можем. Только на данном форуме этот вопрос возникал не одну сотню раз. Вопрос входит в тен топ, первые три места.
KilkennyCat (2008-11-29 18:30:00) [11]http://www.google.ru/search?hl=ru&q=Delphi+%D0%BF%D0%BE%D0%B8%D1%81%D0%BA+%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=
snake-as (2008-11-29 18:26:00) [12]хм. СТранно, не могу найти никак.
snake-as (2008-11-29 18:23:00) [13]хм. СТранно, не могу найти никак.
snake-as (2008-11-29 18:10:00) [14]Все, понятно. Ищем, ищем..
KilkennyCat (2008-11-29 18:07:00) [15]
> snake-as © (29.11.08 18:05) [2]
> Ладно, вопрос специфичный
Отнюдь.
Это один из самых распространненых вопросов. Описан миллион раз. Практически в каждой книжке, на каждом форуме.
snake-as (2008-11-29 18:06:00) [16]Блин, лишнее сообщение нечайно написал.
snake-as (2008-11-29 18:05:00) [17]Ладно, вопрос специфичный. А помогите еще, пожалуйстаЮ вот с каким делом. Я хочу получить список папок в подпапке, вот код:
Memo1.Clear;
if FindFirst('C:\*.*', faDirectory, sr) = 0 then
begin
Memo1.Lines.Add(sr.Name);
while FindNext(sr) = 0 do
Memo1.Lines.Add(sr.Name);
end;
FindClose(sr);
Но, он мне выдает список всех файлов и папок, как будто я использую аргумент faAnyFile. Не знаете, почему такое может быть?
snake-as (2008-11-29 18:05:00) [18]Ладно, вопрос специфичный. А помогите еще, пожалуйстаЮ вот с каким делом. Я хочу получить список папок в подпапке, вот код:
Memo1.Clear;
if FindFirst('C:\*.*', faDirectory, sr) = 0 then
begin
Memo1.Lines.Add(sr.Name);
while FindNext(sr) = 0 do
Memo1.Lines.Add(sr.Name);
end;
FindClose(sr);
Но, он мне выдает список всех файлов и папок, как будто я использую аргумент faAnyFile. Не знаете, почему такое может быть?
KilkennyCat (2008-11-29 17:48:00) [19]Как ты думаешь, как часто может возникнуть такая задача?