begin process at 2012 05 30 03:26:24
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

Fichier & Disque

 > 

lire un ligne non defini...


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

lire un ligne non defini...

vendredi 27 octobre 2006 à 20:15:26 | lire un ligne non defini...

jojomillenium

Hello!

J'ai un souci, je sais pas comment faire!
Je dois lire un fichier qui est généré par un autre programme, donc je ne peux pas le modifier.
Dans ce fichier il a des lignes du style:

P 0,300 3,50 60,40 5,30;
P 50,00 80,100 100,120 40,50 600,10 30,30;
P 60,80 60,90 90,20 30,10 40, 40
   50,60 70,100 50,80;

Voila, en fait ces lignes definissent des polygone que je dois ensuite dessiner en OpenGL, mais le probleme n'est pas l OpenGL mais la lecture des lignes car comme vous pouvez le constater, chaque ligne na pas le meme nombre de coordonné! et des fois les coordonnées quand il y en a beaucoup passent a la ligne!
P defini que c'est un polygone,
les ensuite il y a les coordonné de chaques point
(dans le fichier j'ai aussi des Wire a dessiner du style W 20 30,40 50,50 avec le premier int etant la largeur du wire et ensuite les coordonnées des points a lier qui comme les P peut varier en nombre)

Donc ma question est quelle est la meilleure manière de pouvoir lire ca?
D'habitude quand c'est bien défini j'utilise sscanf(chaine, "P %d,%d %d,%d %d,%d", ...)
mais la vu que le nombre de %d,%d est variable je vois pas du tout comment faire!!

Merci beaucoup pour votre aide si vous avez une direction a me donner!

jojo

vendredi 27 octobre 2006 à 22:33:06 | Re : lire un ligne non defini...

yann_lo_san

On pourrais avoir un truc du genre :
Attention, rien n'est testé dans ce code !


int i, j;
int nbrPoly = 0;
int ntabValRecup[NBR_POLY_MAX][NBR_POINT_MAX];

do
{
   // recup ligne par ligne
   fin = fgets(sLigne, 255, fichier);
   
   i = j = 0;
   
   // travail sur polygones
   if( sLigne[i] == 'P' )
   {
     while( true )
     {
         // Nouveau poly
         if( sLigne[i] == ';' )
         {
             nbrPoly++;
             break;   
         }

         // Nouvelle ligne
         if( sLigne[i] == '\n' )
             break;

         // les points
         if( sLigne[i] == ' ' || sLigne[i] == ',' )
             i++;

         // recup val
         sscanf(sLigne+i, "%d", &ntabValRecup[nbrPoly][j]);
         j++;
      }
   }
}while( fin != NULL );

samedi 28 octobre 2006 à 18:05:16 | Re : lire un ligne non defini...

goast_tu

Si c'est pas un secret c'est quoi le logiciel qui te donne des fichiers de ce genre?



Trafic web gratuit!!!


Cette discussion est classée dans : fichier, ligne, lire, lignes, defini


Répondre à ce message

Sujets en rapport avec ce message

lire fichier ligne par ligne [ par mat74 ] salut a ts je voudrai savoir comment je pourrai lire un fichier lignes par lignes . par exemple une fonction qui me permerttrai de recuperer la ligne lecture fichier et test des lignes... [ par jojomillenium ] Bonjour, J'aimerai lire un fichier qui ressemble a ca: KJ  1 3 5; I  OPL; B 12 34 78, 90; I  PPL; et ainsi de suite des lignes qui ne sont pas du meme Ligne par ligne [ par Ziman ] Bonjour,d'habitude, j'utilise ReadFile pour lire dans un fichier, mais comment doit-je faire si je veux lire dans le fichier ligne par ligne ? Y a-t-i MFC lire un fichier texte ligne par ligne [ par mqsi ] salut a tous,vs pouvez me dire comment lire un fichier texte ligne par ligne,puis recuperer chaque ligne ds un tableau,et merci pr l'aide,je travail a Lire une ligne au hazard dans un fichier [ par sebastienmz ] Bonjour je suis confronter a un problème : j'aimerais lire une ligne au hazard dans un fichier et je sais pas trop comment faire , pourriez-vous m'aid lire un fichier texte avec visual C++ [ par sarah62223 ] Bonjour,Je suis actuellement en train de developper en C++ et je voudrais savoir comment faire pour venir lire dans un fichier texte ligne par ligne , [C] lire une ligne L dans fichier texte [ par swan94 ] Salut à tous,Je suis actuellement en galère pour trouver la solution à ce problème :    J'aurais besoin de pouvoir lire la ligne dont le numéro serait récupérer des lignes d'un fichier txt [ par the_neo_81 ] Bonjour à tous, voila donc ma question.Cela fait un bon moment que je cherche à:    -lire un fichier txt préformater (je sais que tel ligne  = tel inf Lire la nième ligne d'un fichier texte [ par boninou ] Bonjour à tous !J'aurais voulu savoir comment lire la nième ligne d'un fichier texte en C.Que dois-je utiliser ? fgets? je dois me deplacer avec fseek Comment recup lign par lign d'un .txt ET comment obtenir le contenu d'un repertoire [ par arsenecouette ] Bonjour à tous,Dans un fichier.txt, je sauvegarde un mail. A savoir  :       -premiere ligne :  l'expediteur       -deuxième li


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,983 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales