begin process at 2012 02 10 03:12:31
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

Fichier & Disque

 > 

problème fichier texte (ofstream) taille ?


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

problème fichier texte (ofstream) taille ?

vendredi 24 octobre 2008 à 19:06:58 | problème fichier texte (ofstream) taille ?

baby3378

Bonjour à tous, voila, j'ai repri il y a quelque temps la base d'une source qui listait tous les fichiers d'un repertoire. Jusque là aucun souci. Cependant j'ai ajouté l'enregistrement de chaque nom de fichier (avec ofstream). Ainsi chaque nom de fichier est ajouté au fichier texte créé. Le problème est que : quand le processus est terminé et le fichier fermé, celui-ci n'a pas toutes les informations enregistrés mais uniquement les dernieres adresses. Y'a t-il une limite de taille pour les fichier txt ?j'ai retourné le problème dans tout les sens et ne trouve pas la solution. Remarque : pendant l'execution du processus de listage le fichier est plus gros et a l'air de contenir toutes les donné mais a un moment il redevient petit et n'affiche que les dernieres adresses trouvés et des epsaces. Voila, je m'en remet donc a vous. javascript:Insert_Emoticon('/imgs2/smile_blush.gif'); Voici ma source : #include #include #include #include using namespace std; void ScruterSousDossiers(char * Dossier) { ofstream file; file.open("texte.txt"); HANDLE hRecherche; WIN32_FIND_DATA WFD; char * Nom = WFD.cFileName; char DossFiltre[1024], DossRech[1024]; //-----// strcpy(DossFiltre, Dossier); strcat(DossFiltre, "*.*"); hRecherche = FindFirstFile(DossFiltre, &WFD); if(hRecherche == INVALID_HANDLE_VALUE) { FindClose(hRecherche); return; } do { if(!(WFD.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)) { if(!(Nom[0] == '.' && !Nom[1]) && !(Nom[0] == '.' && Nom[1] == '.' && !Nom[2])) { strcpy(DossRech, Dossier); strcat(DossRech, Nom); cout << DossRech; cout <<"\n"; file << DossRech <<"\n"; // PLACER LE CODE DE TRAITEMENT ICI, POUR fichier "DossRech". } } if((WFD.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) == FILE_ATTRIBUTE_DIRECTORY) { if(!(Nom[0] == '.' && !Nom[1]) && !(Nom[0] == '.' && Nom[1] == '.' && !Nom[2])) { strcpy(DossRech, Dossier); if (strcmp(DossRech, "C:\\WINDOWS") != 1 ) { if (strcmp(DossRech, "C:\\Program Files") != 1 ) { strcat(DossRech, Nom); strcat(DossRech, "\\"); // PLACER LE CODE DE TRAITEMENT ICI, POUR LE DOSSIER "DossRech". ScruterSousDossiers(DossRech); } } } } } while(FindNextFile(hRecherche,&WFD)); FindClose(hRecherche); file.close(); } int main(int argc, char *argv[]) { ScruterSousDossiers("C:\\"); system("PAUSE"); return EXIT_SUCCESS; }
vendredi 24 octobre 2008 à 19:20:13 | Re : problème fichier texte (ofstream) taille ?

baby3378

escusez moi, je ne pensait pas que le code s'afficherai comme ca. ma question : Bonjour à tous, voila, j'ai repri il y a quelque temps la base d'une source qui listait tous les fichiers d'un repertoire. Jusque là aucun souci. Cependant j'ai ajouté l'enregistrement de chaque nom de fichier (avec ofstream). Ainsi chaque nom de fichier est ajouté au fichier texte créé. Le problème est que : quand le processus est terminé et le fichier fermé, celui-ci n'a pas toutes les informations enregistrés mais uniquement les dernieres adresses. Y'a t-il une limite de taille pour les fichier txt ?j'ai retourné le problème dans tout les sens et ne trouve pas la solution. Remarque : pendant l'execution du processus de listage le fichier est plus gros et a l'air de contenir toutes les donné mais a un moment il redevient petit et n'affiche que les dernieres adresses trouvés et des epsaces. Voila, je m'en remet donc a vous. mon code : http://sertuk.free.fr/demandeaidecpp
samedi 25 octobre 2008 à 01:39:25 | Re : problème fichier texte (ofstream) taille ?

gamemonde

Membre Club
oui si je comprend bien ta fonction est appellé recusivement l'ors de l'ouverture du fichier en ecriture il flush le contenu et reecrit du debut du fichier

donc ca devrait etre

file.open("Myfile.txt","a+");
samedi 25 octobre 2008 à 16:49:24 | Re : problème fichier texte (ofstream) taille ?

baby3378

Merci de m'avoir répondu, je pense que ca doit être ca mais le problème est que mon compilateur (dev c++) m'affiche cette erreur : 

no matching function for call to `std::basic_ofstream<char, std::char_traits<char> >::open(const char[11], const char[3])'

et :

 note C:\Dev-Cpp\include\c++\3.4.2\fstream:695 candidates are: void std::basic_ofstream<_CharT, _Traits>::open(const char*, std::_Ios_Openmode) [with _CharT = char, _Traits = std::char_traits<char>]
dimanche 26 octobre 2008 à 15:12:20 | Re : problème fichier texte (ofstream) taille ?

baby3378

Réponse acceptée !
Finalement j'ai trouvé la solution : il faut ouvrir le fichier de la forme :

file.open("texte.txt", std::ios_base::app );

Voila, en esperant que cela serve a quelqu'un.


Cette discussion est classée dans : fichier, problème, texte, include, ofstream


Répondre à ce message

Sujets en rapport avec ce message

Ecriture Fichier Texte (avec ofstream) [ par baptchr55 ] Bonjour à tous... Je souhaiterais stocker dans un fichier texte l'ensemble des données que je reçois (par le biais d'un socket cpp). à savoir j'ai es problèmes de conflits d'adresse [ par vlad_dracula ] bonjour, voila j'ai un problème quand j'execute ce programme : il compile sans problème mais me sort un problème de conflits d'adresses à l'éxecution. Prb de stockage fichier texte [ par Jarod1980 ] Bonjour tout le monde,Voilà j'ai un problème dans mon programme. Je voudrais ouvrir un fichier texte et stocker son contenu dans une variable. Le prob problème date [ par phenX ] bonjour, sur mon code j'ai:  fprintf(fichier,"%d\t\t", time(&H));  pour afficher la date un fichier texte, et quand j'ouvre le ficier texte, c'est un ofstream et écriture dans un fichier texte [ par bobybx ] Bonjour,J'ai une question peut-être bête mais je suis bloqué :J'ai un fichier texte avec 3 lignesligne 1ligne 2ligne 3Le contenu de ces lignes varient C++ et fichier texte [ par olobo ] bonjour ! j'ai besoin d'aide pour 2 problème svp [^^happy13] [u]Problème 1 [/u] Voila j'aimerais pouvoir lire les ligne d'un fichier texte qui est comparer les mots d'un fichier texte aux éléments d'une liste chaînée (c++) [ par mervat ] [^^happy10] ce programme permet de créer une liste de mots à partir d'un fichier texte"in1" et puis éliminer les mots qui existent dans la liste du fi é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 lecture fichier texte et mettre le resulat dans un tableau. [ par walidaydi ] bonjour, j'ai un fichier texte qui contient des nombres réels séparés par un espace. comme ca: 124.31611622563169 161.22159929707496 186.9616408968881 Problème génération fichier lib sous VC++ [ par tntk ] Bonjour à tous Encore une foie c'est moi [^^confus2], Sous Visual C++ j'arrive bien à upgrader des fonctions C en C++ dans un projet DLL (Win32 Dynam


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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,359 sec (3)

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