pictogram Auteur: Patrick Biker
Date: 18 mars 2006
Maj : 21 Mars 2015

Exemples évolués

Chaque exemple montre une utilisation pratique de la fonction du WLangage.

Quand plusieurs syntaxes sont possibles, chacune est illustrée indépendamment.

Revenir à la page des exemples évolués


Le code suivant permet d'écrire le contenu d'un fichier Client dans un fichier texte. Chaque enregistrement correspond à une ligne dans le fichier texte. Le fichier texte est ouvert en mode lecture/écriture. 



// Déclaration et initialisation des variables
NomCheminFichier est une chaîne
IdFichier est un entier
ResEcrit est un booléen = Vrai
ResFermeFichier est un entier
// Sélection du nom et du chemin du fichier
NomCheminFichier = "C:\MesRépertoires\Fichier.txt"
// Ouverture du fichier
IdFichier = fOuvre(NomCheminFichier, foLectureEcriture )
// Affichage du message d'erreur si l'ouverture n'a pas été effectuée
SI IdFichier = -1 ALORS
   Erreur(ErreurInfo( errMESSAGE ))
SINON
   // Lecture du premier enregistrement
  
HLitPremier(Client, IDClient)
   // Autres enregistrements à lire ? Erreur d'écriture ?
  
TANTQUE HEnDehors = Faux ET ResEcrit = Vrai
     
// Écriture des enregistrements ligne par ligne dans le fichier texte
     
ResEcrit = fEcritLigne (IdFichier, ...
         Client.NomClient+ TAB +Client.PrénomClient+ TAB +Client.Age)
      // Lecture des enregistrements suivants
     
HLitSuivant(Client, IDClient)
   FIN
   // Affichage du message d'erreur si l'écriture n'a pas été effectuée
  
SI PAS ResEcrit ALORS Erreur(ErreurInfo( errMESSAGE ))
   // Fermeture du fichier
   ResFermeFichier = fFerme(IdFichier)
   SI ResFermeFichier = -1 ALORS
      // Affichage du message d'erreur si la fermeture n'a pas été effectuée
      Erreur(ErreurInfo( errMESSAGE ))
   FIN
FIN


Le code suivant permet de récupérer la position et l'aspect d'une fenêtre à un instant donné. Ces informations sont stockées dans une variable composée (StructFenêtre). Le contenu de la variable composée est ensuite transféré (par son adresse) dans un fichier texte.



// Déclaration des variables
IdFichier est un entier
StructFenêtre est composée de
   PosHorizontal,PosVertical sont des entiers
  
Largeur, Hauteur sont des entiers
FIN
ResEcriture est un entier
ResFermeFichier est un entier
// Création d'un fichier
IdFichier = fCrée("C:\Temp\FichierFenêtre.txt")
// Affichage du message d'erreur si la création n'a pas été effectuée
SI IdFichier = -1 ALORS
   Erreur(ErreurInfo( errMESSAGE ))
SINON
   // Récupération de la position et de l'aspect de la fenêtre
  
StructFenêtre PosHorizontal = MaFenêtre..X
  
StructFenêre PosVertical = MaFenêtre..Y
  
StructFenêtre Largeur = MaFenêtre..Largeur
  
StructFenêtre Hauteur = MaFenêtre..Hauteur
  
// Écriture de la position et de l'aspect de la fenêtre dans le fichier texte
  
ResEcriture = fEcritLigne (IdFichier , & StructFenêtre, Dimension(StructFenêtre))
   // Affichage du message d'erreur si l'écriture n'a pas été effectuée
  
SI ResEcriture = -1 ALORS Erreur(ErreurInfo( errMESSAGE ))
   // Fermeture du fichier
  
ResFermeFichier = fFerme(IdFichier)
   SI ResFermeFichier = -1 ALORS
      // Affichage du message d'erreur si la fermeture n'a pas été effectuée
     
Erreur(ErreurInfo( errMESSAGE ))
   FIN
FIN


Le code suivant permet d'écrire le contenu d'un fichier Client dans un fichier texte. Chaque enregistrement correspond à une ligne dans le fichier texte. Le fichier texte est ouvert en mode lecture/écriture.



// Déclaration et initialisation des variables
NomCheminFichier est une chaîne = "\Mes Fichiers\Fichier.TXT"
IdFichier est un entier
ResEcrit est un booléen = Vrai
ResFermeFichier est un entier
// Ouverture du fichier
IdFichier = fOuvre(NomCheminFichier, foLectureEcriture )
// Affichage du message d'erreur si l'ouverture n'a pas été effectuée
SI IdFichier = -1 ALORS
    Erreur(ErreurInfo( errMESSAGE ))
SINON
    // Lecture du premier enregistrement
    HLitPremier(Client, IDClient)
    // Autres enregistrements à lire ? Erreur d'écriture ?
    TANTQUE HEnDehors =  Faux ET ResEcrit = Vrai
        // Écriture des enregistrements ligne par ligne dans le fichier texte
        ResEcrit = fEcritLigne (IdFichier , ...
            Client.NomClient + TAB +Client.PrénomClient + TAB + Client.Age)
        // Lecture des enregistrements suivants
        HLitSuivant( Client , IDClient )
    FIN
    // Affichage du message d'erreur si l'écriture n'a pas été effectuée
   
SI PAS ResEcrit ALORS Erreur(ErreurInfo( errMESSAGE ))
    // Fermeture du fichier
    ResFermeFichier=fFerme(IdFichier)
    SI ResFermeFichier = -1 ALORS
        // Affichage du message d'erreur si la fermeture n'a pas été effectuée
        Erreur(ErreurInfo( errMESSAGE ))
    FIN
FIN


Le code suivant permet de récupérer la position et l'aspect d'une fenêtre à un instant donné. Ces informations sont stockées dans une variable composée (StructFenêtre). Le contenu de la variable composée est ensuite transféré (par son adresse) dans un fichier texte.



// Déclaration des variables
IdFichier est un entier
StructFenêtre est composée de
   PosHorizontal,PosVertical sont des entiers
  
Largeur, Hauteur sont des entiers
FIN
ResEcriture  est un entier
ResFermeFichier est un entier
// Création d'un fichier
IdFichier = fCrée("\Temp\FichierFenêtre.txt")
// Affichage du message d'erreur si la création n'a pas été effectuée
SI IdFichier = -1 ALORS
   Erreur(ErreurInfo( errMESSAGE ))
SINON
   // Récupération de la position et de l'aspect de la fenêtre
  
StructFenêtre PosHorizontal = MaFenêtre..X
   StructFenêre PosVertical = MaFenêtre..Y
   StructFenêtre Largeur = MaFenêtre..Largeur
   StructFenêtre Hauteur = MaFenêtre..Hauteur
   // Écriture de la position et de l'aspect de la fenêtre dans le fichier texte
  
ResEcriture = fEcritLigne (IdFichier , & StructFenêtre, Dimension(StructFenêtre))
   // Affichage du message d'erreur si l'écriture n'a pas été effectuée
  
SI ResEcriture = -1 ALORS Erreur(ErreurInfo( errMESSAGE ))
   // Fermeture du fichier
  
ResFermeFichier = fFerme(IdFichier)
   SI ResFermeFichier = -1 ALORS
      // Affichage du message d'erreur si la fermeture n'a pas été effectuée
     
Erreur(ErreurInfo( errMESSAGE ))
   FIN
FIN