En este capítulo del tutorial de C++ crearemos una función llamada list_dir(string dir) que nos pemitirá listar los elementos (archivos y carpetas) de un determinado directorio, para ello trabajaremos con la librería dirent.h para manejar directorios y su estructura de datos llamada dirent que nos permitirá ir accediendo uno a uno a los elementos del directorio, usaremos el miembro d_name de la estructura de datos dirent para extraer el nombre de cada elemento.
list-dir.cpp
#include <iostream> #include <dirent.h> using namespace std; void list_dir(string dir) { DIR * directorio; struct dirent * elemento; string elem; if (directorio = opendir(dir.c_str())) { while (elemento = readdir(directorio)) { elem = elemento->d_name; if (elem != "." && elem != "..") cout << elem << endl; } } closedir(directorio); } void init() { cout << "Ruta del directorio a listar: "; string dir; getline(cin, dir); list_dir(dir); init(); } int main(int argc, char *argv[]) { init(); system("PAUSE"); return 0; }
No hay comentarios:
Publicar un comentario