begin process at 2012 05 30 10:18:40
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Divers

 > 

traiter plusieurs fichiers dans un dossier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

traiter plusieurs fichiers dans un dossier

samedi 5 février 2011 à 11:18:17 | traiter plusieurs fichiers dans un dossier

mervat

bonjour,
je veux faire les mêmes traitements pour chaque fichier d'un dossier,
je vais donner un exemple pour que vous me comprenez plus:
supposons que j'ai un dossier "44001" comprenant 3 fichiers textes in1, in2 et in3; je veux faire les mêmes traitements pour in1, in2 et in3 et avoir en sortie 3 fichiers différents out1, out2 et out3.
est ce possible, si oui quelles corrections pourrais-je faire pour le code suivant pour satisfaire mes besoins.

Code C/C++ :
#include <string>
#include <dirent.h>
#include <fstream>
#include <iostream>

bool isValid(const std::string& path)
{
  return !path.empty() && path != "." && path != "..";
}
int main()
{static const std::string folder = "44001";
std::ofstream ofs ("out.txt");
DIR* rep = opendir(folder.c_str());
if (rep)
  { struct dirent* lecture;

	while ((lecture = readdir(rep)))
	 {
	  if (!isValid(lecture->d_name))
		continue;
        
	 ofs << "traitement" << std::endl; //ou n&#8217;importe quel traitement ou instruction
	 }

	closedir(rep);
  }
 return 0;
}

j'espère avoir votre aide le plutôt possible.
merci.
samedi 5 février 2011 à 19:40:28 | Re : traiter plusieurs fichiers dans un dossier

pop70

Réponse acceptée !
Pour en faire trois il faut déclarer 3 sorties :

std::ofstream ofs1 ("out1.txt");
std::ofstream ofs2 ("out2.txt");
std::ofstream ofs3 ("out3.txt");

puis

ofs1 << "traitement" << std::endl;
ofs2 << "traitement" << std::endl;
ofs3 << "traitement" << std::endl;

dans la boucle.

Après, si c'est pour beaucoup de fichiers, autant faire ceci :

Code C/C++ :
for (int i = 1; i <= nombreFichiers; i++) //tout au début du main
{
 

et là tu remet ton code sauf que pour la déclaration du fichier tu mets :

Code C/C++ :
    char *nbcs = new char;
    itoa (i, nbcs, 10);

    string chemin = "out";
    chemin += nbcs;
    chemin += ".txt";
    std::ofstream ofs (chemin.c_str());


ça va te générer
"out1.txt"
"out2.txt"
"out3.txt"
...
jusqu'à
"out nombreFichiers .txt"

puis
le traitement


et enfin :

Code C/C++ :
} // fin de la boucle juste avant return 0;




Pop70
samedi 5 février 2011 à 21:53:42 | Re : traiter plusieurs fichiers dans un dossier

mervat

je vous remercie pour l'aide, et surtout pour le détail, une réponse bien détaillée qui m'a tellement aidé.
merci.


Cette discussion est classée dans : dossier, fichiers, include, path, std


Répondre à ce message

Sujets en rapport avec ce message

Comptage de fichiers + poids du dossier avec fonction FindFirst et Récursivité [ par Jaybiboo ] Bonjour à tous ceux qui prendront le temps de me lire ! Actuellement en fin de BTS Informatique et Réseau pour l'Industrie et les Services techniques traiter des dossiers et des fichiers [ par mervat ] bonjour, je veux faire le meme traitement pour tous les fichiers d'un dossier, mais le dossier d'entrée a lui meme des dossiers de fichiers,j'ai réuss créer un vecteur de termes à partir d'un dossier de fichiers texte [ par mervat ] bonjour, pour avoir une liste contenant les termes de tous les fichiers dans un dossier, j'ai écrit ce code. la liste que j'ai obtenue contient les te Compiler un programme écrit en C++ utilisant une bibliothèque C. Erreurs... [ par Virus721 ] Bonjour tout le monde ! :) Voila j'essaye de me coder un petit jeu avec la bibliothèque SDL 1.2 et l'aide du site du zéro. J'essaye autant que possib éliminer les mots vides d'un fichier texte [ par mervat ] bonjour, j'ai un petit truc qui me bloque, je veux éliminer du fichier texte in les mots qui existent dans le fichier texte motvide et mettre le résul Récupérer des valeurs depuis un fichier text [ par sokpassy85 ] Bonjour, Je souhaite récupérer des mesures contenues dans un fichier texte. J'ai fait ce bout de programme pour la récupération et l'affichage des val La class string [ par jderf ] Je suis débutant et je teste la class string. Voici un code tous simple, mais y'a un probleme de conversion à la compil que je ne comprend pas. Les er Symbol extern non résolue [ par La Guite ] Bonjour,J'ai un projet en cours : une application win32 sous visual 9 et sous vista.J'ai une erreur de compile :1>Scene.obj : error LNK2019: unresolve memmove() et fichiers ? [ par boualiasma ] Salut, 1) je trouve un exemple de memmove() sous windows : Code : C 1 2 3 4 5 6 7 8 9 10 11 12 /* memmove example */ #include #includ probléme de linker "SDL" [ par yoshiv ] Bonjour, bonsoir. J'ai un probléme avec un exercice (morpion en SDL) [u]mon system[/u]: vista. visual c++ express 2008. Le code ou il y a le probléme


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,796 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales