Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1481 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  problème d'ouverture de fichier [résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

problème d'ouverture de fichier [résolu]

n°237396
gobbaf
Posté le 30-10-2002 à 16:44:43  profilanswer
 

bonjour
j'ai un fichier etape0.txt qui a cette tête-là :
                 BBBBBBN
                 BBBBBNN
                 BBBBNNN
                 BBBNNNN
                 BBNNNNN
                 BNNNNNN
                 NNNNNNN
et j'essaie de l'importer dans une matrice 9x9 de caractères (j'initialise un contour à 'B';)
mais voilà l'initialisation se déroule bien mais pas l'importation des caractères du fichier texte

Code :
  1. void initialise(grille m)
  2. {
  3. FILE *f;
  4. int i;
  5. int j;
  6. //Initialisation de la matrice avec des 'B' partout
  7. for (i=0;i<T;i++)
  8.  for (j=0;j<T;j++)
  9.   m[i][j]='B';
  10. //Ouverture du fichier et ecriture dans la matrice du contenu du fichier
  11. if ((f=fopen("etape0.txt","rt" ))==(NULL))
  12.  printf("Probleme a l'ouverture du fichier etape0.txt.\n" );
  13. else
  14. {
  15.  for (i=1;i<T-1;i++)
  16.  {
  17.   for (j=1;j<T-1;j++)
  18.   {
  19.    if (fscanf(f,"%c",&m[i][j])==(-1))
  20.     printf("Probleme de lecture dans le fichier etape0.txt.\n" );
  21.   }
  22.  }
  23. }
  24. fclose(f);
  25. for (i=0;i<T;i++)
  26. {
  27.  for (j=0;j<T;j++)
  28.   printf("%2c",m[i][j]);
  29.  printf("\n" );
  30. }
  31. }


ça m'affiche pas la matrice...
 
je sèche.


Message édité par gobbaf le 03-11-2002 à 13:58:48
mood
Publicité
Posté le 30-10-2002 à 16:44:43  profilanswer
 

n°237423
vttman2
Je suis Open ...
Posté le 30-10-2002 à 17:02:24  profilanswer
 

Juste en passant  
ça fait longtemps que j'ai pas fait de C  :sarcastic:  
for (i=1;i<T-1;i++)  
 {  
  for (j=1;j<T-1;j++)  
  {  
   if (fscanf(f,"%c",&m[i][j])==(-1))  
    printf("Probleme de lecture dans le fichier etape0.txt.\n" );  
 
m est déclaré comment ?
et pourquoi tu pars avec i=1 et j=1
et pas i=0 et j=0 dans la boucle ci-dessus ?

n°237425
Taz@PPC
saloperie de i=`expr $i + 1`;
Posté le 30-10-2002 à 17:04:44  profilanswer
 

"rt" => "t" n'est pas standard


---------------
du bon usage de rand [C] / [C++]
n°238800
gobbaf
Posté le 03-11-2002 à 13:58:20  profilanswer
 

bonjour
pour le 't' je sais que ce n'est pas standard (on en a déjà parlé dans un poste précedent, mes profs m'ont demandé de le laisser bien que ce ne soit pas de norme ANSI...)
 
sinon le problème est résolu : dans le fichier etape0.txt, il ne fallait ni retour-chariot ni espace.
 
pour info, je commence ma boucle à i=1 et j=1 parce que j'ai besoin d'initialiser un bord à ma matrice (ma matrice sera plus grande que mon fichier *.txt), d'ailleurs elle se finit à i<TAILLE-1 et j< TAILLE-14 (et non i<TAILLE et j<TAILLE)
 
m est déclaré ici : void initialise(grille m)
en sachant que j'ai mis : typedef grille[TAILLE]; et j'ai défini TAILLE avant            : #define TAILLE 10
 
 
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  problème d'ouverture de fichier [résolu]

 

Sujets relatifs
[PHP] Extraire les deux premiers caractères d'une chaîne - RESOLU[Delphi] débutant problème délimiteur
compresser un fichier sur le serveur[C/C++] Copier un char* dans un char*? pas resolu-C'est pour ce soir:/
transfert de data d'un fichier csv dans une base de données mysql[PHP] Big Problème Conflit php / php3
[Java]TCP Client ne marche que partiellement pkoi?[Resolu]problème avec NN4 et un lien vers un .css
OLE : savoir si un fichier word est deja ouvert ?Copie de fichier
Plus de sujets relatifs à : problème d'ouverture de fichier [résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR