Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.03.2010, 21:10   #1
tanek
Форумчанин
 
Регистрация: 07.03.2009
Сообщений: 209
Сообщение Delphi работа с файлами

Здраствуйте дорогие форумчанины.... Возник у меня такой вопросик.
Мне нужно сделать лабараторку на delphi. Нужно организовать поиск файла по слову или фразе в слове.
Как сделать поиск по файле я сделала. А вот как сделать поиск файлов по фразе я не могу понять.
Например: в каталоге есть 200 файлов. 100 файлов имеют имя primer1,primer2.....primer100 Если я ввиду фразу primer то на экран выведет 100 этих файлов
Помогите мне сделать эту процедуру......
Заранее спасибо....)))
tanek вне форума Ответить с цитированием
Старый 05.03.2010, 21:12   #2
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Если ты сделала, просто по имени файла, то и "по фразе" тоже сможешь.
Посмотри в справке функции Pos и PosEx,
Способ такой же, только чуть чуть, совсем малость отличается.
psycho-coder вне форума Ответить с цитированием
Старый 05.03.2010, 21:18   #3
tanek
Форумчанин
 
Регистрация: 07.03.2009
Сообщений: 209
По умолчанию

по имени все окозалось проще чем я думала... В Delphi есть функция FinedFirst... может не много ошиблась)))
А как сделать через pos?
tanek вне форума Ответить с цитированием
Старый 05.03.2010, 22:02   #4
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Что-то не очень внятное
Цитата:
Сообщение от tanek Посмотреть сообщение
Нужно организовать поиск файла по слову или фразе в слове
Если имеется ввиду часть имени, то так
Код:
var
  SearchRec : TSearchRec;
begin
  if FindFirst('*primer*', faAnyFile, SearchRec) = 0 then
  repeat
    if (SearchRec.Attr and faDirectory) <> faDirectory then
      memo1.Lines.Add(SearchRec.Name);
  until FindNext(SearchRec) <> 0;FindClose(SearchRec)
end;
Или надо искать по содержимому файла?
eoln вне форума Ответить с цитированием
Старый 05.03.2010, 22:35   #5
tanek
Форумчанин
 
Регистрация: 07.03.2009
Сообщений: 209
По умолчанию

нет не по содержимому а именно по фразе....
А что за тип TSearchRec?
tanek вне форума Ответить с цитированием
Старый 05.03.2010, 22:46   #6
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Цитата:
Сообщение от tanek Посмотреть сообщение
А что за тип TSearchRec?
Обычный, из SysUtils. Содержит информацию о файле (имя, размер, аттрибуты и т.п.)
eoln вне форума Ответить с цитированием
Старый 06.03.2010, 15:22   #7
tanek
Форумчанин
 
Регистрация: 07.03.2009
Сообщений: 209
По умолчанию

eoln Я попробывала ваш вариант кода, но он не работает. Программа по прежнему ищет файл только по всему слову ане по фразе....
помогите мне плз))))
tanek вне форума Ответить с цитированием
Старый 06.03.2010, 15:49   #8
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

У меня работает. В примере поиск всех файлов в текущей папке у которых в имени присутствует фраза PROJ
Меняем PROJ на PRIMER и будет счастье.
Файлы типа primer01, primer02 и т.д. должны быть в папке с программой
Вложения
Тип файла: rar 1.rar (165.1 Кб, 12 просмотров)
eoln вне форума Ответить с цитированием
Старый 06.03.2010, 16:14   #9
tanek
Форумчанин
 
Регистрация: 07.03.2009
Сообщений: 209
По умолчанию

eoln и вправду работает.... наверное я ступила)))
а вот такой вопрос у меня к вам....
в строке
Код:
FindFirst('*PROJ*', faAnyFile, SearchRec)
вместо *PROJ* я хочу указать путь к папке...
я могу записать так:
Код:
FindFirst('c:\1\*PROJ*', faAnyFile, SearchRec)
??
tanek вне форума Ответить с цитированием
Старый 06.03.2010, 16:57   #10
tanek
Форумчанин
 
Регистрация: 07.03.2009
Сообщений: 209
По умолчанию

eoln спасибо тебе еще раз ты мне очень помог)))
tanek вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с файлами (Delphi 7) сер4ей Помощь студентам 8 12.11.2011 19:11
Работа с файлами в Delphi 7 NeAlSe Помощь студентам 11 19.11.2010 17:08
Delphi: Работа с файлами NEFERA Помощь студентам 1 27.02.2010 19:16
Delphi 7. Работа с файлами Flame_of_Death Помощь студентам 8 10.07.2009 12:25