Langage c++

Fermé
pinacolata Messages postés 3 Date d'inscription jeudi 22 novembre 2007 Statut Membre Dernière intervention 27 novembre 2007 - 27 nov. 2007 à 11:18
pinacolata Messages postés 3 Date d'inscription jeudi 22 novembre 2007 Statut Membre Dernière intervention 27 novembre 2007 - 27 nov. 2007 à 12:35
Bonjour,
je veux lire un fichier ligne par ligne. les lignes sont de tailles différente et je veux stocker chaque ligne dans une chaine.
mon fichier est sous la forme suivante
1245
123
45
689
123
145
en sachant que chaque ligne contient une seule chaine de caractére.
mon code est en c++

2 réponses

#include <iostream.h> // pour les cout
#include <fstream.h> // pour les ofstream
#include <stdlib.h> // pour la fonction exit()

main()
{

ifstream infile("le nom de ton fichier ici", ios::in);

if(!infile) {
cerr << "erreur fichier d'entrée impossible à ouvrir \n";
exit(1);
}

chaine[32]; // a adapter à la taille maxi de ta chaine stockée dans le fichier
while(infile >> chaine) {
cout << chaine << endl;
}
}
0
pinacolata Messages postés 3 Date d'inscription jeudi 22 novembre 2007 Statut Membre Dernière intervention 27 novembre 2007
27 nov. 2007 à 12:35
Salut fatta, merci pour ton aide mais je ne sais pas pourquoi lorsque j'écrit commeça, le prog m'affiche des résultats bizarres
FILE *file1;
file1 = fopen(stcn,"r");
int nb_intpoint;
int **tabint=(int**)malloc(2*sizeof(int*));
for( i=0;i<eLig;i++)
{
tabint[i]=(int*)malloc(nb_intpoint*sizeof(int));
}

ifstream infile("file1", ios::in);


if(!infile)
{
cerr << "erreur fichier d'entrée impossible à ouvrir \n";
exit(1);
}

int xv=0;
char chaine[20];
char chaine1[20];
char chaine2[20];// a adapter à la taille maxi de ta chaine stockée dans le fichier
cout << chaine << endl;
nb_intpoint=atoi(chaine);
printf("chaine=%s\n",chaine);
printf("nbre interest point=%d\n",nb_intpoint);
while(infile >> chaine)
{
cout << chaine1 << endl;
tabint[0][xv]=atoi(chaine1);
cout << chaine2 << endl;
tabint[1][xv]=atoi(chaine2);
printf("tabint[0][%d]=%d\n",xv,tabint[0][xv]);
printf("tabint[1][%d]=%d\n",xv,tabint[1][xv]);
xv++;
}

/*****************************************************/
printf("message\n");
fclose(file1);

il affiche seulement nb_intpoint=0 et ça n'affiche pas le tableau.
merci fatta
0