lire des chaines de caractére (string) dans un fichier externe
2 réponses
lebail_herve
Bonjour à tous,
Un petit probleme de c++ qui concerne la classe string. Le but du
programme est de lire des données dans un fichier externe appelle
"instruction.txt" dont voici le listing :
!!!!NUMBER OF DATA FILE
3
!!!! NUMBER OF COORDINATES
4
!!!! eps_dalpha =
0.001
... etc ...
le but du jeu est de lire la premiere ligne a consigner dans un string
juste pour verifier que l'on a bien la bonne chaine de caracteres,
puis la deuxieme et enregistrer dans ue variable int le chiffre 3, etc
...
using std::cout;
using std::cin;
using std::cerr;
using std::endl;
using std::ios;
using std::ofstream;
using std::string;
int n_file;
int n_coord;
double eps_dalpha;
double eps_dalpha_MUL_MAX;
double epsilon;
int main()
{
int in_file;
int in_points;
int in_coord;
int n_data;
int n_param;
int in_param;
string ligne;
///////////////////////////////////////////////////////
// ouverture en lecture du fichier "instructions.txt"//
///////////////////////////////////////////////////////
ofstream finstruction("instruction.txt",ios::in);
if (!finstruction)
{
cerr << "ouverture du fichier"
<< " instructions.txt impossible" << endl;
exit(1);
}
DONC si on avait une saisie clavier getline(cin,ligne) peut
fonctionner [teste par myself], mais que faire des lors qu'on a un
flux de donnees provenant d'un fichier externe ? j'ai aussi essaye
[tres naivement je suppose ...] l'instruction "finstruction >> ligne"
sans succes.
On 6 Feb 2004 02:03:21 -0800, (Herv? LEBAIL) wrote:
DONC si on avait une saisie clavier getline(cin,ligne) peut fonctionner [teste par myself],
C'est même la solution que je préconise.
mais que faire des lors qu'on a un flux de donnees provenant d'un fichier externe ?
Idem. Où est le problème ?
j'ai aussi essaye [tres naivement je suppose ...] l'instruction "finstruction >> ligne" sans succes.
Effectivement, >> s'arrête après le premier espace.
-- ;-)
fontaine jean paul
je crois que ofstream c'est pour l'ecriture dans un fichier pour la lecture if faudrai employer ifstream
Herv? LEBAIL wrote:
Bonjour à tous,
Un petit probleme de c++ qui concerne la classe string. Le but du programme est de lire des données dans un fichier externe appelle "instruction.txt" dont voici le listing :
!!!!NUMBER OF DATA FILE 3 !!!! NUMBER OF COORDINATES 4 !!!! eps_dalpha > 0.001 ... etc ...
le but du jeu est de lire la premiere ligne a consigner dans un string juste pour verifier que l'on a bien la bonne chaine de caracteres, puis la deuxieme et enregistrer dans ue variable int le chiffre 3, etc ...
using std::cout; using std::cin; using std::cerr; using std::endl; using std::ios; using std::ofstream; using std::string;
int n_file; int n_coord; double eps_dalpha; double eps_dalpha_MUL_MAX; double epsilon;
int main() { int in_file; int in_points; int in_coord; int n_data; int n_param; int in_param; string ligne;
/////////////////////////////////////////////////////// // ouverture en lecture du fichier "instructions.txt"// ///////////////////////////////////////////////////////
ofstream finstruction("instruction.txt",ios::in);
if (!finstruction) { cerr << "ouverture du fichier" << " instructions.txt impossible" << endl; exit(1); }
DONC si on avait une saisie clavier getline(cin,ligne) peut fonctionner [teste par myself], mais que faire des lors qu'on a un flux de donnees provenant d'un fichier externe ? j'ai aussi essaye [tres naivement je suppose ...] l'instruction "finstruction >> ligne" sans succes.
Alors si quelqu'un peut m'aider ...
D'avance merci
@+, Herve
je crois que ofstream c'est pour l'ecriture dans un fichier
pour la lecture if faudrai employer ifstream
Herv? LEBAIL wrote:
Bonjour à tous,
Un petit probleme de c++ qui concerne la classe string. Le but du
programme est de lire des données dans un fichier externe appelle
"instruction.txt" dont voici le listing :
!!!!NUMBER OF DATA FILE
3
!!!! NUMBER OF COORDINATES
4
!!!! eps_dalpha > 0.001
... etc ...
le but du jeu est de lire la premiere ligne a consigner dans un string
juste pour verifier que l'on a bien la bonne chaine de caracteres,
puis la deuxieme et enregistrer dans ue variable int le chiffre 3, etc
...
using std::cout;
using std::cin;
using std::cerr;
using std::endl;
using std::ios;
using std::ofstream;
using std::string;
int n_file;
int n_coord;
double eps_dalpha;
double eps_dalpha_MUL_MAX;
double epsilon;
int main()
{
int in_file;
int in_points;
int in_coord;
int n_data;
int n_param;
int in_param;
string ligne;
///////////////////////////////////////////////////////
// ouverture en lecture du fichier "instructions.txt"//
///////////////////////////////////////////////////////
ofstream finstruction("instruction.txt",ios::in);
if (!finstruction)
{
cerr << "ouverture du fichier"
<< " instructions.txt impossible" << endl;
exit(1);
}
DONC si on avait une saisie clavier getline(cin,ligne) peut
fonctionner [teste par myself], mais que faire des lors qu'on a un
flux de donnees provenant d'un fichier externe ? j'ai aussi essaye
[tres naivement je suppose ...] l'instruction "finstruction >> ligne"
sans succes.
je crois que ofstream c'est pour l'ecriture dans un fichier pour la lecture if faudrai employer ifstream
Herv? LEBAIL wrote:
Bonjour à tous,
Un petit probleme de c++ qui concerne la classe string. Le but du programme est de lire des données dans un fichier externe appelle "instruction.txt" dont voici le listing :
!!!!NUMBER OF DATA FILE 3 !!!! NUMBER OF COORDINATES 4 !!!! eps_dalpha > 0.001 ... etc ...
le but du jeu est de lire la premiere ligne a consigner dans un string juste pour verifier que l'on a bien la bonne chaine de caracteres, puis la deuxieme et enregistrer dans ue variable int le chiffre 3, etc ...
using std::cout; using std::cin; using std::cerr; using std::endl; using std::ios; using std::ofstream; using std::string;
int n_file; int n_coord; double eps_dalpha; double eps_dalpha_MUL_MAX; double epsilon;
int main() { int in_file; int in_points; int in_coord; int n_data; int n_param; int in_param; string ligne;
/////////////////////////////////////////////////////// // ouverture en lecture du fichier "instructions.txt"// ///////////////////////////////////////////////////////
ofstream finstruction("instruction.txt",ios::in);
if (!finstruction) { cerr << "ouverture du fichier" << " instructions.txt impossible" << endl; exit(1); }
DONC si on avait une saisie clavier getline(cin,ligne) peut fonctionner [teste par myself], mais que faire des lors qu'on a un flux de donnees provenant d'un fichier externe ? j'ai aussi essaye [tres naivement je suppose ...] l'instruction "finstruction >> ligne" sans succes.