30/11/2010, 14:49
|
| | Fecha de Ingreso: noviembre-2010
Mensajes: 38
Antigüedad: 14 años, 1 mes 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. |