Ver Mensaje Individual
  #4 (permalink)  
Antiguo 30/11/2010, 14:49
fcoredo
 
Fecha de Ingreso: noviembre-2010
Mensajes: 38
Antigüedad: 13 años, 5 meses
Puntos: 2
Respuesta: Punteros y estructura dirent

No se como es en Windows, pero en Unix si intentas abrir una carpeta no te va a dar error, sino que la va a abrir. Si intentas leer el contenido, obtienes números de i-nodos junto con el nombre de los ficheros que están en la carpeta.

Lo que debes hacer para saber si el fichero es una carpeta o un fichero normal, es usar la función fstat().

En este problema, la recursividad te puede ayudar a simplificar el código. Si es un fichero haces lo que quieres hacer y si es una carpeta vuelves a llamar a la función que estás ejecutando con el nombre de la nueva carpeta. Así recorres todo el árbol.

Buena suerte.