Dobrý den, potřeboval bych poradit. Potřebuji nutně vytvořit program, který bude sám procházet adresáře a vypisovat soubory např typu .jpg. Adresáře můžou obsahovat i podadresáře. Názvy adresářů mohou být libovolné. Děkuji za každou radu nebo pomoc.
Fórum › Pascal
Procházení adresářu a výpis
Tohle umí procedury Findfirst a Findnext z jednotky Dos, podrobnosti najdeš v helpu (z hlavy si je nepamatuju).
Adresář od souboru rozeznáš podle atributu Directory.
Zmíněné procedury procházejí pouze jeden adresář. Když chceš do podadresářů, musíš to celé vhodně zabalit do rekurze.
Pro inspiraci: http://mircosoft.ic.cz/download/DISK.PAS
Moje stránka.
Potřebuješ proceduru, která by uměla tohle:
1) Projde aktuální adresář a zpracuje soubory, které v něm najde (Findfirst+Findnext, atribut Anyfile-Directory).
2) Projde aktuální adresář a zapamatuje si všechny podadresáře, které v něm najde (Findfirst+Findnext, atribut Directory).
3) Zavolá sama sebe na každý ze zapamatovaných podadresářů.
Na to, jak proceduře předat informaci o tom, který adresář má procházet, mě napadají dva způsoby: buď se předá kompletní cesta přes parametr a pak se předhodí Findfirstu, nebo se před voláním procedury do příslušného adresáře přepneme (Chdir) a pak procházíme vždycky aktuální adresář. První způsob je "čistší", jednodušší a bezpečnější (nehrozí, že po skončení procedury zůstaneme omylem zahrabaní někde v podadresářích), u druhého zase nehrozí potíže při hodně hlubokém vnoření (kdy by cesta přesáhla maximální povolenou délku).
Zapamatování seznamu podadresářů je nutné. Na první pohled to sice vypadá, že by se daly procházet hned, jak je najdeme, ale má to háček: Findnext je jenom jeden a rekurzi by nepřežil.
Moje stránka.
sice to nepatri k tomuto problemu, ale chtel jsme se zeptat, zda procedura chdir potrebuje nejake specialni prava, nebo tak neco, pro zmenu adresare. Protoze mi prestal doslova ze dne na den fungovat, ted mi kvuli tomu pada cely program.
diky za odpoved
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Aplikace na procházení adresářů — založil Jasper
ASP.NET: Lokalizace, procházení adresářů — založil 85.dman
Vypis adresaru pomoci dir — založil
Mazání adresářů — založil Petr
Seznam adresářů — založil pajtl
Moderátoři diskuze