25. januar 2006 - 01:27Der er
15 kommentarer og 1 løsning
Traversere filer i direktorier kodet i ansi-c
Mit problem er at jeg gerne vil have lidt hjælp til hvordan jeg kan lave noget kode der traverserer ned igennem en mappe-struktur så alle filerne også i undermapperne bliver listet. Jeg har lavet lidt inledende kode hvor jeg vha ffblk, findfirst og findnext kan finde frem til alle fillerne i et bestemt direktorie. Men jeg mangler at kunne behandle underdirektorierne samt de filer de indeholder. De filer de indeholder kan selvfølgelig findes på samme måde som jeg allerede gør, vha ffblk, findfirst og findnext. Men hvordan behandler jeg under direktorierne ?
Iøvrigt er der forskellige modeller for forskellige compilere og platforme. På nogle platforme bruger man opendir/readdir, på andre findfirst/findnext, og windows.h definerer FindFirstFile og FindNextFile
jeg prøvede lige at tage koden fra dit link ind i min compiler (Borland), jeg fik en masse fejl. Som om jeg mangler en include af en anden fil end dir.h Kender du til problemer med Borland compileren mht det ?
Builderen bør også have findfirst & venner, prøv uden _ Jeg ved ikke hvordan man laver console apps med Builderen. Hvis du har Borland Builder i din PATH bør du kunne oversætte det fra kommandolinien.
findfirst og findnext virker (jeg har dog ikke ændret alt så hele programmet virker). Jeg har dog vha _dos_findfirst fået lavet mig en liste over direktorier. Er der et problem i at benytte _dos_findfirst osv fra <dos.h> (eks lange filnavne osv) ?
Nej sikkert ikke, men i min desperate kamp for at få noget til at virke så har jeg søgt efter alternative muligheder. Der fald jeg bla over <dos.h> og <stdlib.h>. Og med _dos får jeg listet direktorierne, det er da i det mindste en start :-)
Lukket uden at give point videre. Da Bertelbrander har givet svaret men ikke ønsker point.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.