Título: [Source] Listando directorios y archivos en C/C++ Publicado por: ~~ en 30 Mayo 2007, 15:09 pm Bueno, pues como veo que hay dudas respecto a esto en el foro (y yo necesitaba hacerlo tambien :xD) me e decidido a compartir con vosotros un sencillo codigo que lista directorios y carpetas con las apis FindFirstFile y FindNextFile.
Espero que os sea util ;) ACTUALIZADO Y MEJORADO: Código
Código viejo: #include <stdio.h> #include <iostream> #include <windows.h> #define BUFSIZE MAX_PATH void main() { WIN32_FIND_DATA FindFileData; HANDLE hFind = INVALID_HANDLE_VALUE; LPSTR Dir; Dir = (LPSTR) malloc (BUFSIZE); std::cout << "Introduzca el nombre de la ruta a explorar: "; std::cin >> Dir; strcat (Dir,"\\*"); //Le añadimos un \* al final de la ruta para que pueda listar los direcrorios bien hFind = FindFirstFile(Dir, &FindFileData); if (hFind == INVALID_HANDLE_VALUE) { std::cout << "Ruta incorrecta" << '\a'; } else { std::cout << FindFileData.cFileName << '\n'; //El primer fichero // Listamos todos los ficheros del directorio while (FindNextFile(hFind, &FindFileData) != 0) //Mientras q la funcion q lista el siguiente fichero, es decir //FindNextFile, no nos devuelva nulo... { std::cout << FindFileData.cFileName << '\n'; //...listamos el resto de ficheros y directorios } } free(Dir); } 1S4ludo Título: Re: [Source] Listando directorios y archivos en C/C++ Publicado por: Override en 30 Mayo 2007, 18:01 pm Una duda namás :)
No acaso la libearia Iostream se usa en C++? pero veo que usas C y aparte usas malloc, como comentario en Cpp ya no se usa malloc, se usa new[] y delete[] para crear heaps.. y también en C++ el uso de define ya es obsoleto se usa Const para las constantes... No sé, se presta a confusiones, yo antes pensaba que por codear en VC++ estructuradamente codeaba en C++, pero era C, jeje, c++ como debes saber es hijo de C al cual se le agrega la POO (clases, herencia, polimorfismo, objetos, encapsulación, atributos, métodos blah blah) Un saludo pd: Nada más hago esta observacion, lo demás tú código estuvo bien Título: Re: [Source] Listando directorios y archivos en C/C++ Publicado por: ~~ en 30 Mayo 2007, 18:27 pm Si :xD :xD es por q malloc me resulta mas comodo q new :xD :xD ademas e aprendido con google, nunca me han dado clases ni nada por el estilo, por lo q no te extrañe q haga mezclas de este estilo :-(
Título: Re: [Source] Listando directorios y archivos en C/C++ Publicado por: Override en 30 Mayo 2007, 19:02 pm Jajaja
Es gracioso, por que vamos a la inversa entonces, a ti te queda más fácil malloc? a mí new :P por otro lado tampoco he recibido clases "de programación". Pero te recomiendo un buen libro: "Fundamentos De Programacion, Algoritmos, Estructuras De Datos Y O Bjetos - 3ª Ed." Editorial McGrawHill buscalo y un saludo Título: Re: [Source] Listando directorios y archivos en C/C++ Publicado por: Juan_Perez en 31 Mayo 2007, 13:27 pm Aquí les paso un ejemplo de una función recursiva en C++ que busca un archivo en una carpeta y todas sus subcarpetas.
Hice dos versiones, una para Windows y otra para GNU/Linux. La versión para Windows la compilé con el Visual C++ .NET 2003 y el Dev C++ 4.9.9.2 bajo Windows XP pro SP2, y la de GNU/Linux con el g++ 4.1.2 bajo Ubuntu 6.0. Probé ambos programas y aparentemente si encuentra las carpetas en donde se encuentra el archivo a buscar. Si lo prueban y encuentran errores les agradecería me los comentaran para corregirlos. Versión Windows Código: #include <iostream> Código: #include <iostream> Título: Re: [Source] Listando directorios y archivos en C/C++ Publicado por: jhonder31 en 6 Agosto 2010, 08:01 am amigos nesecito hacer este programa pero en C ansi porfa les ruego su ayuda, o almenos diganme en que lenguaje estan esos que ustedes hicieron porque lo he probado en c++, en visual c++ y en nungino me funciona me da un error de librerias, les agradeceria mucho su ayuda.
Título: Re: [Source] Listando directorios y archivos en C/C++ Publicado por: egyware en 6 Agosto 2010, 17:32 pm amigos nesecito hacer este programa pero en C ansi porfa les ruego su ayuda, o almenos diganme en que lenguaje estan esos que ustedes hicieron porque lo he probado en c++, en visual c++ y en nungino me funciona me da un error de librerias, les agradeceria mucho su ayuda. Reemplazas los cout por printf y ya.Bueno, pues como veo que hay dudas respecto a esto en el foro (y yo necesitaba hacerlo tambien :xD) me e decidido a compartir con vosotros un sencillo codigo que lista directorios y carpetas con las apis FindFirstFile y FindNextFile. Espero que os sea util ;) .... Excelente aporte, lo utilizare de inmediato ;D Título: Re: [Source] Listando directorios y archivos en C/C++ Publicado por: Eternal Idol en 6 Agosto 2010, 18:43 pm Si ven que un newbie levanta un hilo de hace años no le respondan por favor.
|