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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.02.2013, 19:40   #1
Nullerset
Пользователь
 
Регистрация: 01.02.2013
Сообщений: 27
По умолчанию Delphi поиск файлов

Всем привет, у меня вопрос

Код:
program Project2;

{$APPTYPE CONSOLE}

uses
  Windows,
  SysUtils;

var
  SR:tSearchRec;
  FindRes:integer;
  t:textfile;
begin
FindRes:=FindFirst('C:\*.*', faAnyFile, SR);
While FindRes = 0 do
  begin
    Writeln(pansichar(SR));
    FindRes:=FindNext(sr);
  end;
  FindClose(sr);
end.
Собственно я хочу вывести файлы на диске C: , но на Writeln(Pansichar(SR)); компилятор ругается, что в этом случае делать? Как вывести, именно в консоли!!!
Nullerset вне форума Ответить с цитированием
Старый 28.02.2013, 20:12   #2
Delphi_ProGer
Форумчанин
 
Регистрация: 30.10.2010
Сообщений: 524
По умолчанию

SR.Name !!!
Delphi_ProGer вне форума Ответить с цитированием
Старый 28.02.2013, 20:17   #3
Host-2013
Пользователь
 
Регистрация: 02.02.2013
Сообщений: 63
По умолчанию

Writeln(pansichar(SR.Name));
Host-2013 вне форума Ответить с цитированием
Старый 28.02.2013, 20:19   #4
Nullerset
Пользователь
 
Регистрация: 01.02.2013
Сообщений: 27
По умолчанию

Цитата:
Сообщение от Host-2013 Посмотреть сообщение
Writeln(pansichar(SR.Name));
спасибо, что помогли нубу, а теперь такой вопрос, как это сделать все рекурсивно, а то вот что я пытаюсь сделать

Код:
Function Find(dir:pansichar) : pansichar;
var
SR:TSearchRec;
FindRes:Integer;
s,N:String;
p:pansichar;
begin

  findRes:=FindFirst('C:\*.*', faAnyFile, SR);
  while findres = 0 do
    begin
    p:=pansichar(dir+'\');
      IF sr.Attr = faDirectory then
        begin
          p:=pansichar(dir+'\'+SR.Name);
          Find(p);
          Writeln(p);
        end;
      N:=SR.Name;
      Writeln(dir,'\',N);
      FindRes:=FindNext(SR);
  end;
  end;
Она выводит какой то майндфак, помогите теперь с рекурсией, сори что так надоедливо я вам прошу(
Nullerset вне форума Ответить с цитированием
Старый 28.02.2013, 20:30   #5
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Код:
procedure ScanDir(StartDir: string); //Процедура поиска
var  SearchRec : TSearchRec;
begin
    if StartDir[Length(StartDir)] <> '\' then
         StartDir := StartDir + '\';
    try
    if FindFirst(StartDir+'*', faAnyFile, SearchRec) = 0 then
    repeat  // Поиск вложенных файлов
        if (SearchRec.Attr and faDirectory) <> faDirectory then
            writeln(SearchRec.Name);
    until FindNext(SearchRec) <> 0;FindClose(SearchRec);
    except end;
    {разделение по каталогам}
    if FindFirst(StartDir+'*', faAnyFile, SearchRec) = 0 then
    repeat  //Поиск вложенных каталогов
        if (SearchRec.Attr and faDirectory) = faDirectory then
        if (SearchRec.Name <> '..')
            and (SearchRec.Name <> '.') then
        begin
            writeln(StartDir + SearchRec.Name + '\');
            ScanDir(StartDir + SearchRec.Name + '\');
        end;
    until FindNext(SearchRec) <> 0;FindClose(SearchRec);
end;

Последний раз редактировалось eoln; 28.02.2013 в 20:32.
eoln вне форума Ответить с цитированием
Старый 28.02.2013, 20:36   #6
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,899
По умолчанию

SR:tSearchRec;нельзя преобразовать в строку. Вы скорее всего имели ввиду SR.Name вместо одного SR

УПД. Сорри, поспешил с ответом, открыл тему давно и она висела в непрочитанных...
phomm вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск файлов в Delphi Алена-X Общие вопросы Delphi 26 19.07.2013 21:37
Поиск файлов в Delphi Николай ПН Помощь студентам 5 17.12.2010 19:15
Поиск файлов в delphi Даниил_глазко Общие вопросы Delphi 2 17.12.2010 19:02
Поиск файлов в delphi _PROGRAMM_ Помощь студентам 4 21.09.2010 16:31
Поиск файлов (Delphi) VadEr Помощь студентам 4 05.12.2009 21:08