Problème lecture fichier de grande taille

africanwinners Messages postés 9 Date d'inscription mercredi 22 octobre 2008 Statut Membre Dernière intervention 20 mars 2010 - 17 mars 2010 à 22:00
africanwinners Messages postés 9 Date d'inscription mercredi 22 octobre 2008 Statut Membre Dernière intervention 20 mars 2010 - 19 mars 2010 à 01:52
j'ai concu ce code pour lire le contenu d'un fichier et le mettre dans un tableau à 2 dimensions: ca marche pour un fichier de petite taille:et dès que le fichier est plus grand ca plante

#include<stdio.h>
#include <string.h>
#include <stdlib.h>

int main()
{
FILE* fichier = NULL;
FILE * sortie;

int i=0;
char chaine[100];
char * tab[100][250];

int j=0;


fichier = fopen("re-lem","r");
sortie = fopen("l", "w");

if (fichier!=NULL)
// Boucle de lecture des caractères un à un
do

{
fgets(chaine,100,fichier);
tab[i][j]=chaine;
fputs(tab[i][j],sortie);

printf("%s",tab[i][j] );
// On lit le caractère
// On l'affiche
i=i+1;


} while (!feof(fichier) && chaine!="</DOC>"); // On continue tant que fgetc n'a pas retourné EOF (fin de fichier)
j++;
}
fclose(fichier);
fclose(sortie);






le fichier à cette forme
<DOC 1>
le
séparation
de
le
Tchécoslovaquie
Pourquoi
et
comment
avoir
diviser
le
Tchécoslovaquie
et
quel
</DOC>
<DOC 2>
..
...
merci pour votre aide

2 réponses

BunoCS Messages postés 15330 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 novembre 2022 103
18 mars 2010 à 10:11
Hello,
Normal, ton tableau a une taille fixe: si tu la dépasses, ça plante...
Il faut gérer ton tableau dynamiquement

@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
0
africanwinners Messages postés 9 Date d'inscription mercredi 22 octobre 2008 Statut Membre Dernière intervention 20 mars 2010
19 mars 2010 à 01:52
merci pour l'aide
0