En este capítulo del tutorial de C++ crearemos un programa que nos permitirá saber si un determinado archivo o carpeta existe, para manejar directorios utilizaremos la librería dirent.h. Crearemos dos funciones is_dir() y is_file() ambas Boolean para realizar la comprobación.
isdir-isfile.cpp
#include <iostream>
#include <dirent.h>
using namespace std;
bool is_dir(string dir)
{
DIR * directorio;
if (directorio = opendir(dir.c_str()))
{
closedir(directorio);
return true;
}
else
{
return false;
}
}
bool is_file(string file)
{
FILE * archivo;
if (archivo = fopen(file.c_str(), "r"))
{
fclose(archivo);
return true;
}
else
{
return false;
}
}
void init()
{
cout << "Buscar si el archivo o carpeta existe: ";
string elemento;
getline(cin, elemento);
if (is_dir(elemento)) cout << "La carpeta existe" << endl;
else if (is_file(elemento)) cout << "El archivo existe" << endl;
else cout << "El elemento no existe" << endl;
init();
}
int main(int argc, char *argv[])
{
init();
system("PAUSE");
return 0;
}
No hay comentarios:
Publicar un comentario