Editeur de page html

Contenu du snippet

C'est un editeur de page html. il n'est pas du tout complet, c'est juste un exemple, on peut rajouter des milliers de balises. ( je vous laisse les ajouter ;-) )

Source / Exemple :


#include <stdio.h>
#include <iostream.h>
#include <conio.h>

void chapitre(FILE *);
void ligne(FILE *);
void texte(FILE *);
void image(FILE *);
void lien(FILE *);
void saut(FILE *);
void edit(FILE *);
void copyr(FILE *);
void tableau(FILE *);

void main(void)
{
    char nom_fichier[100],titre[100];
    FILE * fichier;
    printf("\tBIENVENUE sur l'éditeur de page HTML\n\n\n\n");
    printf("Entrez le nom de votre page HTML à créer (avec l'extention) : ");
    gets(nom_fichier);
    fichier=fopen(nom_fichier,"w");
    printf("Entrez le titre de votre page: ");
    gets(titre);
    fprintf(fichier,"<HTML>\n<HEAD>\n<TITLE>%s</TITLE>\n</HEAD>\n<BODY>\n",titre);
    edit(fichier);
    fprintf(fichier,"</BODY>\n</HTML>");
    fclose(fichier);
}

void edit(FILE * fichier)
{
    char choix;
    do
   {
        clrscr();
        printf("\tMENU D'EDITION\n\n");
        printf("\t(1) Ajouter un chapitre\n\t(2) Ajouter une ligne horizontale\n\t(3) Ajouter un texte\n\t(4) Ajouter une image\n\t(5) Ajouter un lien\n\t(6) Faire un saut de ligne\n\t(7) Ajouter un copyright\n\t(8) Ajouter un tableau de contact\n\t(q) Quitter\n");
        printf("\n\tVotre choix : ");
        cin>>choix;
        switch(choix)
        {
             case'1':chapitre(fichier);break;
             case'2':ligne(fichier);break;
             case'3':texte(fichier);break;
             case'4':image(fichier);break;
             case'5':lien(fichier);break;
             case'6':saut(fichier);break;
             case'7':copyr(fichier);break;
             case'8':tableau(fichier);break;
      }
   }
   while(choix!='q');
}

void chapitre(FILE * fichier)
{
      char chap[100];
      printf("Entrez le titre du chapitre : ");
      gets(chap);
      fprintf(fichier,"<CENTER><H1>%s</H1></CENTER>\n",chap);
}

void ligne(FILE * fichier)
{
       fprintf(fichier,"<HR>\n");
}

void texte(FILE * fichier)
{
     char caractere;
     printf("Saisissez votre texte, et appuyez sur Alt +170 puis entrée pour quitter l'éditeur de texte :\n");
     while((caractere=getchar())!='¬')
    {
         if(caractere!='¬')
         fprintf(fichier,"%c",caractere);
         if(caractere=='\n')
      	fprintf(fichier,"<br>");
     }
     fprintf(fichier,"\n");
     fflush(stdin);
}

void image(FILE * fichier)
{
      char image[100];
      printf("Entrez le nom du fichier image : ");
      gets(image);
      fprintf(fichier,"<IMG SRC=\"%s\">\n",image);
}

void lien(FILE * fichier)
{
      char lien[100],phrase[100];
      printf("Entrez URL de la page : ");
      gets(lien);
      printf("Entrez le nom de votre lien : ");
      gets(phrase);
      fprintf(fichier,"<A HREF=\"%s\">%s</A>\n",lien,phrase);
}

void saut(FILE * fichier)
{
       fprintf(fichier,"<BR>\n");
}

void copyr(FILE * fichier)
{
      char auteur[100];
      printf("Entrez le nom de l'auteur du copyright : ");
      gets(auteur);
      fprintf(fichier,"<CENTER>(c) copyright %s </CENTER>\n",auteur);
} 

void tableau(FILE * fichier)
{
      char nom[100], adresse[100], code[10], ville[100], boite[10], pays[50], tel[20], gsm[20], mail[100], diplomes[256], experience[256];
      printf("Entrez votre nom complet (NOM Prénom) : ");
      gets(nom);
      printf("Entrez votre adresse (Rue, avenue... + numéro) : ");
      gets(adresse);
      printf("Entrez votre code postal : ");
      gets(code);
      printf("Entrez votre ville : ");
      gets(ville);
      printf("Entrez votre boîte postale (facultatif) : ");
      gets(boite);
      printf("Entrez votre pays : ");
      gets(pays);
      printf("Entrez votre numéro de téléphone avec préfixe : ");
      gets(tel);
      printf("Entrez votre numéro de gsm (facultatif) : ");
      gets(gsm);
      printf("Entrez votre adresse E-mail : ");
      gets(mail);
      printf("Entrez la liste de vos diplomes (max. 256 caractères) : ");
      gets(diplomes);
      printf("Entrez vos expérience antérieure (emplois, stages, max idem) : ");
      gets(experience);

      fprintf(fichier, "\n<table align=\"left\" border=\"1\">");
      if(nom[0]!=NULL)
                fprintf(fichier, "\n<tr><td>nom:</td><td>%s</td></tr>", nom);
      if(adresse[0]!=NULL)
                fprintf(fichier, "\n<tr><td>adresse:</td><td>%s</td></tr>", adresse);
      if(ville[0]!=NULL)
                fprintf(fichier, "\n<tr><td>code et ville:</td><td>%s - %s</td></tr>", code, ville);
      if(boite[0]!=NULL)
   	fprintf(fichier, "\n<tr><td>boîte:</td><td>%s</td></tr>", boite);
      if(pays[0]!=NULL)
   	fprintf(fichier, "\n<tr><td>pays:</td><td>%s</td></tr>", pays);
      if(tel[0]!=NULL)
   	fprintf(fichier, "\n<tr><td>numéroe de téléphone:</td><td>%s</td></tr>", tel);
      if(gsm[0]!=NULL)
   	fprintf(fichier, "\n<tr><td>numéro de gsm:</td><td>%s</td></tr>", gsm);
      if(mail[0]!=NULL)
   	fprintf(fichier, "\n<tr><td>adresse E-mail:</td><td><a href=\"mailto:%s\">mailez-moi</a></td></tr>", mail);
      if(diplomes[0]!=NULL)
   	fprintf(fichier, "\n<tr><td>diplomes:</td><td>%s</td></tr>", diplomes);
      if(experience[0]!=NULL)
   	fprintf(fichier, "\n<tr><td>expériences:</td><td>%s</td></tr>", experience);
      fprintf(fichier, " </table><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>");
}

Conclusion :


je n ai teste ce source que sous borland c++, pas sous visual donc certaines fonctions comme clrscr ne fonctionneront pas. et puis il y a un truc qui me plais pas c est pour l'editeur de texte si quelqu'un trouve un truc mieux pour sortir de la boucle, ca serait sympa de me le dire, merci

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.