Ver Mensaje Individual
  #2 (permalink)  
Antiguo 14/12/2016, 04:00
eferion
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 10 años, 1 mes
Puntos: 204
Respuesta: Devolver cantidad de archivos .* en directorio

No especificas el lenguaje (C/C++) por lo que te daré una respuesta genérica.

Tanto C como C++ carecen de un mecanismo estándar para interactuar con el árbol de directorios. Tienes, por tanto, dos posibilidades:
  • Buscar una librería de terceros que sea multiplataforma y te proporcione la funcionalidad buscada
  • Utilizar directamente las utilidades que te proporciona la API del sistema operativo. (Esta opción no será portable entre Linux/Windows por ejemplo)
En el caso de soluciones multiplataforma en C++ puedes optar por usar boost filesystem module
Otra opción es usar tinydir, que imagino que funcionará tanto en C como en C++.

Si tu opción pasa por hablar directamente con el sistema operativo, en el caso de Linux puedes usar la librería dirent:

Código C:
Ver original
  1. DIR* dirp = opendir(".");
  2. struct dirent *dp;
  3. readdir(tableDir); // ignorar '.'
  4. readdir(tableDir); // ignorar '..'
  5.  
  6. while ((dp = readdir(dirp)) != NULL)
  7.   printf("%s\n",dp->d_name);
  8. closedir(dirp);

En el caso de Windows te toca buscar la documentación en la msdn. No tengo tiempo ahora mismo de investigarlo por mi cuenta.

Un saludo.
__________________
La ayuda se paga con esfuerzo o con dinero. Si no estás dispuesto a esforzarte y quieres que te hagan los deberes pide presupuesto, al menos así ahorrarás tiempo.