Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

цикл поиска файлов

1.9K
20 июля 2008 года
0xf001
96 / / 24.05.2005
Под виндой я организовывал цикл поиска таким кодом:
Код:
struct _finddata_t c_file;
   intptr_t hFile;

   if( (hFile = _findfirst( findmask, &c_file )) == -1L )
            return 0;
   else
   {
      do {
            char subfile[1024];
            if(dirname[strlen(dirname)-1]=='/'|'\\')sprintf(subfile, "%s%s",dirname, c_file.name);
            else sprintf(subfile, "%s/%s",dirname, c_file.name);

          if(c_file.attrib & _A_SUBDIR )
          {
            char * res = SearchInFiles(subfile, MaterialName);
            if(res!=0) return res;
          }
          else
          {        
            if(strcmpi(MaterialName, GetMatNameFromFile(subfile))==0)
            {
                char *retfile = new char[strlen(subfile)];
                strcpy(retfile, subfile);
                return retfile;
            }
          }

      } while( _findnext( hFile, &c_file ) == 0 );
      _findclose( hFile );
   }

Но при переносе проги поди линукс обнаружилось, что там таких функций нету. Так же отсутствует файл dos.h, так что использовать стандартные findfirst()/findnext() так же не представляется возможным. Гугл невнятно молчит.
Помогите пожалуйста...
245
20 июля 2008 года
~ArchimeD~
1.4K / / 24.07.2006
Я лично в подобном случае использовал библиотеку boost - вариант не лучший, конечно, но зато кроссплатформенно.
4.3K
20 июля 2008 года
flat
142 / / 27.12.2005
Смотри man по функциям opendir, readdir, closedir
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог