int main (int argc, char *argv[]) { if(!argv[1] || !argv[2]) { fprintf(stderr,"Parametre manquant\n\t1 : Fichier lut .cha\n\t2 : Fichier de sauvegarde .res\n\t3 : Facultatif : emplacement de sauvegarde xfig si voulu\n"); return 1; } FILE *f=fopen(argv[1],"r"), *svr=fopen(argv[2],"w"); if(!f || !svr) { fprintf(stderr,"Erreur ouverture fichier\n"); return 1; } ListeChaine l; lecture_chaine(f,&l); //printf("### ARBRE ###\n"); ABRe *abr=NULL; Reseau r3; r3.nbNoeuds=0; r3.LNoeuds=NULL; r3.LCommodites=NULL; recree_reseau_ABRE(&l,&r3,&abr); //lecture_reseau(&r); ecrit_reseau_disque(&r3,svr); //affiche(abr); //aff(abr, 0); if(argv[3]) { FILE *xfig=fopen(argv[3],"w"); ecrit_reseau_xfig(&r3,xfig,500,2); fclose(xfig); printf("Fichier rendu : %s\t %s\n", argv[2], argv[3]); } else printf("Fichier rendu : %s\n", argv[2]); printf("Fini\n"); fclose(f); fclose(svr); return 0; }
int main(int argc, char **argv) { FILE *f = NULL; FILE *output = NULL; Reseau *R = NULL; ListeChaine *L = NULL; char *filename = NULL; int i; if (argc < 2) { leverErreur("Usage : ./convertres *.cha"); return 1; } for (i = 1; i < argc; i++) { f = ouvrirFichier(argv[i]); if (f == NULL) { continue; } R = creerReseau(); L = creerListeChaine(); lecture_chaine(f, L); recree_reseau(L, R); filename = basename(argv[i]); fprintf(stderr, "Conversion en réseau du fichier %s...\n", argv[i]); filename = strtok(filename, "."); filename = strcat(filename, ".res"); output = fopen(filename, "w"); if (!output) { leverErreur("Erreur création fichier de sortie"); freeReseau(R); freeListeChaine(L); fermerFichier(f); return 1; } ecrit_reseau_disque(R, output); fermerFichier(output); fermerFichier(f); freeReseau(R); freeListeChaine(L); } return 0; }