Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Jaroslaw Skobelew                    2:5047/26.88   11 Nov 2001  03:31:58
 To : Ivan Gurov
 Subject : Обход деpева каталогов
 -------------------------------------------------------------------------------- 
 
    Привет , Ivan !
 
 09 Hоя 2001 (Пт) 20:48, Ivan Gurov написал к All:
 
  IG> Hаpод подскажите как сабж pеализовать по-пpоще. Может есть какой-то
  IG> пpостой способ без всяких там запоминаний целой кучи SearchRec'ов?
 
 Лови. Программа печатает деревого каталогов в файл. Далее сооброжай.
 
 === Cut ===
 #include <string.h>
 #include <stdio.h>
 #include <dir.h>
 extern unsigned _heaplen=0;
 
 //печатает n пробелов+строку s в файл f
 void print_s(FILE *f,int dc,char* s)
 {int i;
    for(i=0;i<dc;i++)  fputc(' ',f);
     fprintf(f,"%s\n",s);
 }
 
 //печатает  все файлы в текущем каталоге
 void print_files(FILE *f,int dc)
 {int fl;struct ffblk fi;
 
    fl = findfirst("*.*",&fi,0);
    while (!fl)
    {
       strlwr(fi.ff_name);         //преобразовать к строчным буквам
       print_s(f,dc,fi.ff_name);
       fl=findnext(&fi);
    }
 }
 
 //печатает деревого каталогов на текущем диске
 void tree(FILE *f,char* s,int df,int d)
 {int fl;struct ffblk fi;
 
  if (s[0]=='.') return;
  print_s(f,d,s);
  chdir(s);
    print_files(f,d+df);
 
    fl = findfirst("*.*",&fi,0x10);
    while (!fl)
    {
       if (fi.ff_attrib&0x10) tree(f,fi.ff_name,df,d+df);
       fl=findnext(&fi);
    }
  chdir("..");
 }
 
 void main(void)
 {FILE *f;static char dir[256];
    getcurdir(0,dir);
    f = fopen("disktree.dat", "w");
    tree(f,"\\",2,0);
    fclose(f);
    chdir(dir);
 }
 === Cut ===
     Будете у нас на Колыме...   Милости просим.
                                                 Ярослав
 --- GoldED/386 3.00.Beta5+
  * Origin:  (2:5047/26.88)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Обход деpева каталогов   Ivan Gurov   09 Nov 2001 21:48:43 
 Обход деpева каталогов   Jaroslaw Skobelew   11 Nov 2001 03:31:58 
 Re: Обход деpева каталогов   Andrey Dashkovsky   10 Nov 2001 15:22:45 
 Обход деpева каталогов   Kartohin Ruslan   19 Nov 2001 20:48:31 
Архивное /ru.algorithms/34453bef256b.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional