Pourtant ma belle fonction je l'avais fait avec amour ,j'arrive a copie l'en tete coorectemnt avec mon truc mais bon me reste du boulot
/************************************************************************
Devoir GTR 1 :"Generation d'un document en HTML"
Auteurs:
Date: Mars 2002
************************************************************************/
//biblioteques n?cessaire a l'execution du programme
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
#include <conio.h>
#include <alloc.h>
//tableaux
#define max 100
typedef int tableau[max];
//************************************************
***********************
//********************* Fonctions utilis?es *****************************
//************************************************
***********************
int erreur(char *msg) //fonction erreur au cas ou l'execution se passe mal
{
printf("ERREUR!!! : %s\n",msg); //affichage du message d'erreur
getchar();//on attend une saisit au clavier pour sortir
exit(1); //on termine l'execution du programme
return 0;
}
//***********************************************************************
int ecriturebalisesdebut() //fonction de creation des balises
{
char *dtete; //pointeur pour les balises HTML
char *titre;
char *dbody;
char *br;
FILE *html;
html = fopen("cartouc.htm","w+" );
FILE *debut;
debut= fopen("debut.htm","w+" );
strcpy(dtete,"<html>" ); //balises HTML
strcpy(titre,"<head><title> Devoir GTR1 Cree par N</title></head>" );
strcpy(dbody,"<body>" );
strcpy(br,"<BR>" ); //saut de paragraphe
fwrite(dtete,6,1,html); //structure du fichier .HTML
fwrite(titre,strlen(titre),1,html);
fwrite(dbody,6,1,html);
fwrite(dtete,6,1,debut); //structure du fichier .HTML
fwrite(titre,strlen(titre),1,debut);
fwrite(dbody,6,1,debut);
fclose(html);
fclose(debut);
return 0;
}
//***********************************************************************
int ecriturebalisefin() //fonction de fin du fichier
{
char *fbody;
char *ftete;
FILE *html;
html = fopen("cartouc.htm","a" );
strcpy(fbody," <\body>" );
strcpy(ftete," <\html>" );
fwrite(fbody,7,1,html);
fwrite(ftete,7,1,html);
fclose(html);
return 0;
}
//***********************************************************************
int ecriturecartouche() //on copie le cartouche dans le fichier html
{
char cart[100]; //tableau de longeur 100
char *texte[max];
char *te[max];
char test[2]; //servira pour lire deux carcateres en meme temps
char toto[]={"/*"};//tableau contenant '/*'
char titi[]={"*/"};//tableau contenant '*/'
int i=0; //servira pour le comptage dans la boucle
int ptr; //resultat de la comparaison test toto
int ptr2;//resultat de la comparaison test titi
FILE *fichier; //pointeur sur une structure de type fichier
fichier = fopen("Matrices.c","r" );//ouverture du fichier en lecture seule
FILE *html;
if(!fichier)//erreur si le fichier n'est pas l?
{
erreur("Le fichier Matrices.c manque" );
}
else
{
html=fopen("cartouc.htm","a+" ); //on ajoute a la fin du fichier
fgets(test,3,fichier);
ptr=strcmpi(test,toto); //on compare deux chaine
if (ptr==0); //si elles sont identiques on fait la boucle
{
fgets(cart,100,fichier);
fprintf(html,"<H2> %s </H2>",cart);
for(i=0;i<5000;i++) //boucle s'arretant quand on a /*
{
fgets(test,3,fichier);
ptr2=strcmpi(test,titi);
if(ptr2==0)
{break;}
else
{
texte[i]=fgets(cart,100,fichier);
fprintf(html,"%s<br> ",texte[i]);
}
}
}
}
fclose(fichier);
fclose(html);
return 0;
}
//***********************************************************************
int fonctiontri()
{
char cart[100]; //tableau de longeur 100
char *texte[max];
char *te[max];
char test[2]; //servira pour lire deux carcateres en meme temps
char toto[]={"/*"};//tableau contenant '/*'
char titi[]={"*/"};//tableau contenant '*/'
int i=0; //servira pour le comptage dans la boucle
int ptr; //resultat de la comparaison test toto
int ptr2;//resultat de la comparaison test titi
FILE *fichier; //pointeur sur une structure de type fichier
fichier = fopen("Matrices.c","r" );//ouverture du fichier en lecture seule
FILE *html;
if(!fichier)//erreur si le fichier n'est pas l?
{
erreur("Le fichier Matrices.c manque" );
}
else
{
html=fopen("teste.htm","w+" ); //on ajoute a la fin du fichier
fgets(test,3,fichier);
ptr=strcmpi(test,toto); //on compare deux chaine
if (ptr==0); //si elles sont identiques on fait la boucle
{
fgets(cart,100,fichier);
fprintf(html,"<H2> %s </H2>",cart);
for(i=0;i<5000;i++) //boucle s'arretant quand on a /*
{
te[i]=fgets(test,3,fichier);
ptr2=strcmpi(test,titi);
if(ptr2==0)
{break;}
else
{
texte[i]=fgets(cart,100,fichier);
fprintf(html,"%s<br> ",texte[i]);
}
}
}
}
fclose(fichier);
fclose(html);
return 0;
}
//************************************************
***********************
//********************* Procedure Principale ***************************
//************************************************
***********************
void main() //procedure principale
{
FILE *debut; //pointeur vers le fichier debut
char *bal; //servira pour faire un lien vers devoir.htm
clrscr();//on efface l'ecran sous DOS
ecriturebalisesdebut(); //on appelle les fonctions
ecriturecartouche();
ecriturebalisefin();
fonctiontri();
debut=fopen("debut.htm","a+" ); //fichier contenant tout les fichier html
strcpy(bal,"Pour lire le cartouche cliquez ""<a href=""cartouc.htm>""la""</A>" );
fwrite(bal,strlen(bal),1,debut);
fclose(debut);
}
//***********************************************************************
OK c bordelique ,je devrais plutot faire une fonction tri que j'appelle a chaque fois mais c a rentre pour Mars ,j'essait de faire un bon truc
Les astuces sont tjs les bien venus