C++ Lire 1 fichier txt, écrire X fichier txt
Résolu/Fermé
Pierre
-
7 mai 2012 à 14:04
Char Snipeur Messages postés 9688 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 2 octobre 2020 - 10 mai 2012 à 09:21
Char Snipeur Messages postés 9688 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 2 octobre 2020 - 10 mai 2012 à 09:21
A voir également:
- C++ Lire 1 fichier txt, écrire X fichier txt
- Fichier rar - Guide
- Fichier host - Guide
- Fichier iso - Guide
- Lire fichier epub - Guide
- Ouvrir fichier .bin - Guide
5 réponses
Char Snipeur
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 328
7 mai 2012 à 14:18
7 mai 2012 à 14:18
Salut.
ofstream Names[ii] ( temp.c_str() , ios::out | ios::trunc);
ça ne veux rien dire. Il faut couper en deux et avoir un nom pour chaque fichier.
ofstream Names[ii] ( temp.c_str() , ios::out | ios::trunc);
ça ne veux rien dire. Il faut couper en deux et avoir un nom pour chaque fichier.
strd::vector<ofstream> xfile; xfile.push_back(ofstream(Names[ii].c_str(),ios::out));
Salut,
Merci pour votre réponse.
Lors de la compilation j'ai une erreur sur la ligne:
xfile.push_back(ofstream(Names[ii].c_str(),ios::out));
Faut-il ajouter une bibliothèque supplémentairement ?
J'utilise :
#include <cstdlib>
#include <fstream>
#include <vector>
#include <iostream>
#include <istream>
#include <sstream>
#include <math.h>
#include <stdio.h>
#include <time.h>
Cordialement
Pierre
Merci pour votre réponse.
Lors de la compilation j'ai une erreur sur la ligne:
xfile.push_back(ofstream(Names[ii].c_str(),ios::out));
Faut-il ajouter une bibliothèque supplémentairement ?
J'utilise :
#include <cstdlib>
#include <fstream>
#include <vector>
#include <iostream>
#include <istream>
#include <sstream>
#include <math.h>
#include <stdio.h>
#include <time.h>
Cordialement
Pierre
Re-bonjour,
le code suivant fonctionne, il créer mas documents comme demander , par contre je n'arrive pas a écrire dedans... voici le code :
std::vector<std::ofstream*> xfile;
for(i=0;i<Names.size();i++)
{
temp = Names[i];
temp = "Vector/test-" + temp + ".txt";
xfile.push_back(new ofstream (temp.c_str(), std::ios::trunc));
}
Pour écrire dans un élément comment faire ?
Pourquoi cela ne fonctionne pas ?!
for(i=0;i<Names.size();i++)
{
xfile[i]<<"hello";
}
Merci d'avance !
Cordialement
Pierre
le code suivant fonctionne, il créer mas documents comme demander , par contre je n'arrive pas a écrire dedans... voici le code :
std::vector<std::ofstream*> xfile;
for(i=0;i<Names.size();i++)
{
temp = Names[i];
temp = "Vector/test-" + temp + ".txt";
xfile.push_back(new ofstream (temp.c_str(), std::ios::trunc));
}
Pour écrire dans un élément comment faire ?
Pourquoi cela ne fonctionne pas ?!
for(i=0;i<Names.size();i++)
{
xfile[i]<<"hello";
}
Merci d'avance !
Cordialement
Pierre
Char Snipeur
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 328
9 mai 2012 à 08:29
9 mai 2012 à 08:29
Salut.
ça ne fonctionne pas car tu utilises des pointeurs. Pour les utiliser il faut les déréférencer :
*(xfile[i])<<"hello";
Si tu as encore des erreurs de compilation, met les messages d'erreur, 9 fois sur 10 l'erreur est expliqué dans les messages.
ça ne fonctionne pas car tu utilises des pointeurs. Pour les utiliser il faut les déréférencer :
*(xfile[i])<<"hello";
Si tu as encore des erreurs de compilation, met les messages d'erreur, 9 fois sur 10 l'erreur est expliqué dans les messages.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Merci pour votre réponse,je reviens vers vous;
Je n'ai pas d'erreur a la compilation avec ce code :
std::vector<std::ofstream*> xfile;
for(i=0;i<Names.size();i++)
{
temp = Names[i];
temp = "Vector/test-" + temp + ".txt";
xfile.push_back(new ofstream (temp.c_str(), ios::out | ios::trunc));
}
for(i=0;i<Names.size();i++)
{
*(xfile[i])<<"hello";
cout<<".";
}
Le programme s'effectue sans message d'erreur, cependant les fichiers sont vide a la fin de l'exécution. Pourquoi n'y a-t-il pas de hello dans chaque fichier ??
Merci d'avance pour votre aide,
Cordialement
Pierre
Merci pour votre réponse,je reviens vers vous;
Je n'ai pas d'erreur a la compilation avec ce code :
std::vector<std::ofstream*> xfile;
for(i=0;i<Names.size();i++)
{
temp = Names[i];
temp = "Vector/test-" + temp + ".txt";
xfile.push_back(new ofstream (temp.c_str(), ios::out | ios::trunc));
}
for(i=0;i<Names.size();i++)
{
*(xfile[i])<<"hello";
cout<<".";
}
Le programme s'effectue sans message d'erreur, cependant les fichiers sont vide a la fin de l'exécution. Pourquoi n'y a-t-il pas de hello dans chaque fichier ??
Merci d'avance pour votre aide,
Cordialement
Pierre
Char Snipeur
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 328
10 mai 2012 à 09:21
10 mai 2012 à 09:21
je pense que le mieux c'est de fermer proprement les fichiers avant de fermer le programme.
xfile[i]->close();
xfile[i]->close();