crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Поиск файлов в подпапках и их подпаках...
kendy
  опции профиля:
сообщение 23.1.2008, 18:14
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 6
Регистрация: 3.1.2008
Пользователь №: 59

Спасибо сказали: 0 раз(а)




Репутация:   0  


Ищу все файлы так:
  wxstring f = wxfindfirstfile("/home/project/*.*");
  while ( !f.empty() )
  {
    ...
    f = wxfindnextfile();
  }
Но так я нахожу только файлы и папки в текущей папке, как мне бы мне сделать так, чтобы и в подпапках можно было и скать и тд?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
archimed7592
  опции профиля:
сообщение 23.1.2008, 18:22
Сообщение #2


Участник
**

Группа: Участник
Сообщений: 127
Регистрация: 27.12.2007
Из: Moscow
Пользователь №: 56

Спасибо сказали: 0 раз(а)




Репутация:   0  


Рекурсивно.
Примерно так:
void processFile(const wxstring &file)
{
  ...
}

void processFolder(const wxstring &folder)
{
  wxstring f = wxfindfirstfile(folder);
  while ( !f.empty() )
  {
    processFile(f);
    f = wxfindnextfile();
  }
  
  f = wxfindfirstdirectory(folder);
  while ( !f.empty() )
  {
    processFolder(f);
    f = wxfindnextdirectory();
  }
}

Только название ф-ции wxfindfirstdirectory уточни(это я с потолка взял) :).
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 23.1.2008, 18:29
Сообщение #3


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Доработаю немного:
void processFolder(const wxstring &folder)
{
  wxstring f = wxfindfirstfile(folder, wxfile);
  while ( !f.empty() )
  {
    processFile(f);
    f = wxfindnextfile();
  }
  
  f = wxfindfirstfile(folder, wxdir);
  while ( !f.empty() )
  {
    processFolder(f);
    f = wxfindnextdirectory();
  }
}
:)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kendy
  опции профиля:
сообщение 23.1.2008, 18:47
Сообщение #4


Новичок


Группа: Новичок
Сообщений: 6
Регистрация: 3.1.2008
Пользователь №: 59

Спасибо сказали: 0 раз(а)




Репутация:   0  


Понял. Спасибо.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 26.4.2024, 20:34