• STATISTIQUES
  • Il y a eu un total de 2 membres et 4004 visiteurs sur le site dans les dernières 24h pour un total de 4 006 personnes!


    Membres: 2 452
    Discussions: 3 572
    Messages: 32 822
    Tutoriels: 77
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [EN] w3challs
    Ce site propose différents types de défis informatiques: piratage, craquage, cryptographie, stég...
    Hacking
    [EN] Framework Metasploit
    Le Framework Metasploit est un logiciel gratuit, open source de tests de pénétration développ&ea...
    Vulnérabilités
    [FR] Zmaster
    Articles sur l'informatique, le hacking, le P2P, les divx, les astuces windows XP, les GSM, Emule, la cryptograph...
    Hacking
    [FR] Kalkulators
    Ce projet a plusieurs buts, le premier étant l’étude de toutes formes cryptographiques, le cot&ea...
    Cryptographie
    [FR] µContest
    µContest est un site de challenges de programmation, c'est à dire qu'il propose des épreu...
    Hacking
    [EN] Listbrain Version 3
    Site proposant 66 challenges présentés dans une liste mélangée.
    Challenges
    [EN] Gekko
    Site de challenge présenter sous la forme d'une quête. Vous êtes un agent secret qui répond sous le nom...
    Challenges

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[C++] Parcours de dossier récursif
03-03-2012, 20h43 (Modification du message : 08-12-2012, 16h37 par Dobry.)
Message : #1
Dobry Hors ligne
Tueur de lamouz
*



Messages : 206
Sujets : 25
Points: 73
Inscription : Aug 2011
[C++] Parcours de dossier récursif
Bonjour, je travaille actuellement sur un projet de sauvegarde de fichier sous GNU/Linux, pour le moment, je souhaite crée un fichier qui sauvegarde le nom de tous les répertoire, sous répertoire et fichier ainsi que leur md5sum dans un fichier.
J'ai le code suivant
Code CPP :

void dumpFile(string directory, ofstream& output){
   DIR *dir = NULL;
   struct dirent *file = NULL;
   if((dir = opendir(directory.c_str())) == NULL){
     
   }
   while((file = readdir(dir)) != NULL){
      if(strcmp(file->d_name, ".") && strcmp(file->d_name, "..")){
         if(file->d_type == DT_DIR){ // Folder
       dumpFile(directory.append("/").append(file->d_name), output);
     }else{
        cout << directory << "/" << file->d_name << endl; // Just to see what is the problem
            output << file->d_name << endl << md5sum(directory, file->d_name) << endl; // Write the result on 2 lines (first the name, then de md5
     }
      }
   }
   
   closedir(dir);

}
 


Donc, si le dossier ne possède que des fichier, ou que je supprime la ligne de récursivité (le if), cela fonctionne parfaitement, mais là, elle bloque et je ne comprend vraiment pas pourquoi.
Type d'erreur :
directory : /home/user/Bureau
Fichier : test.dump, test
Sous dossier : python
sous fichier : aucun

/home/user/Bureau/test.dump
/home/guillaume/Bureau/python/test
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Abandon

Ce qui est normal, étant donnée que le fichier test n'existe pas dans le dossier python, mais est sur le bureau.

Merci pour votre aide.
J'ai trouvé une solution, mais je ne suis pas sûr que ce soit la meilleur, alors si vous aviez des idées à me soumettre pour que je compare, ca serait sympa.
Aestuārium Erudītiōnis

There are only two hard things in Computer Science: cache invalidation, naming things, and off-by-one errors.
+1 (0) -1 (0) Répondre
03-03-2012, 21h09
Message : #2
InstinctHack Hors ligne
Posting Freak
*



Messages : 1,366
Sujets : 184
Points: 299
Inscription : Dec 2011
RE: Parcours de dossier récursif
euh... t'aime pas rsync ? :p
Pourquoi faire ce script alors que des utilitaires complets existent déjà ?
Désolé, je peux pas t'aider Sad
Citation :un jour en cours de java j'ai attrapé les seins d'une fille mais elle m'a frappé en disant "c'est privé !!"
j'ai pas compris pourquoi, je croyais qu'on était dans la même classe
+1 (0) -1 (0) Répondre
04-03-2012, 11h13
Message : #3
Dobry Hors ligne
Tueur de lamouz
*



Messages : 206
Sujets : 25
Points: 73
Inscription : Aug 2011
RE: Parcours de dossier récursif
Parce que je ne fais pas un backup ordinaire, c'est un outils de vérification pour un serveur web (protection des répertoires)
Et puis, en allant dans ce sens, on ne fait plus rien, si on utilise ce qui existe déjà.
Aestuārium Erudītiōnis

There are only two hard things in Computer Science: cache invalidation, naming things, and off-by-one errors.
+1 (0) -1 (0) Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  [C TOTW 2] Parcours de tableau ark 5 2,816 29-09-2014, 17h44
Dernier message: crown
  [C] Parcours récursif des dossiers InstinctHack 12 5,756 22-04-2013, 11h20
Dernier message: sakiir
  [C] Need help pour free en recursif... ark 3 1,758 27-11-2011, 00h57
Dernier message: walafc0

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut