Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Directorios En C++

Iniciado por ALRAZ, 23 de Julio de 2005, 10:04:00 AM

« anterior - próximo »

ALRAZ

 Wenas

parecería una pregunta tonta pero me he dado cuenta que no hay mucha información al respecto:

¿alguien sabe cómo trabajar con directorios en C++?
es decir:
-Obtener los archivos del directorio actual (nombre y extensión) y sus subdirectorios
-Obtener el directorio actual
-Obtener las unidades disponibles (C:, D:, A:, etc)
-Obtener atriburos de los archivos
-crear nuevos directorios
-etc...

fiero

 Las funciones del API de Windows son:

Directorio actual: GetCurrentDirectory
Crear un directorio: CreateDirectory
Listar ficheros: FindFirstFile, FindNextFile, FindClose

http://msdn.microsoft.com/library/default....t_functions.asp

También tienes clases de las MFC para hacer estas cosas, por ejemplo listar ficheros, con la clase CFileFind, etc.

un saludo
www.videopanoramas.com Videopanoramas 3D player


_Grey

 No existen unas funciones standard aceptadas por el comité ANSI, así que es algo complicadito....

Algunos compiladores tienen un dir.h con funciones para ello, si usas VC++ quizá tengas un direct.h con las mismas funciones pero con el "_" delante para delatar que están fuera de asegurar compatibilidad.

Busca en la documentación de tu compilador "chdir" y te aparecerán estas funciones que necesitas.

Saludos.

ALRAZ

 adios porteabilidad  :(


en fin, probaré eso que me han dicho.


Gracias  (ole)  

MChiz

 Hola!

En la libreria boost ( www.boost.org ) hay unos modulos para lo que quieres.

Es algo del estilo:

std::string directory = "c:/"

boost::filesystem::directory_iterator i( directory );
boost::filesystem::directory_iterator end_directory;

while( i != end_directory ) {
 bool is_directory = boost::filesystem::is_directory( *i );

 std::string name = directory + i->leaf( );

 if( is_directory ) {
   ...
 } else {
   ...
 }
}

En la documentacion de boost encontraras lo que necesites.

Un saludote!!

zupervaca

 
Citaradios porteabilidad
si lo quieres hacer portable _Grey que ha dado la solucion
CitarBusca en la documentación de tu compilador "chdir" y te aparecerán estas funciones que necesitas






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.