Rastell Toull

Site web consacrée à la Bretagne,
à l'Afrique du nord
à la chanson française,
à la recherche scientifique,
et à bien d'autres sujets ...

Les formats Rastell Toull

par Jacques-Deric Rouault

Article original
Page publique
Page opérationnelle

Version 3.2 du
28 Février 2012

Table thématique
Table chronologique
Administrateur du site
Comment citer ce document ?
Jacques-Deric Rouault, 2012. Les formats Rastell Toull. Rastell Toull page C127.

Liens internes

Autolien
Numéro
Article
Auteur
Rubrique Sous-rubrique Nature
C127
Les formats Rastell Toull
Jacques-Deric Rouault B42 Informatique
Article original

Cette page utilise les articles

Articles utilisant cette page
Numéro
Article
Auteur
Rubrique Sous-rubrique Nature
C123
Le traitement des données statistiques
Jacques-Deric Rouault B42 Informatique
B46 Proba-Stats

Article original
C137
Les fichiers autolisibles
Jacques-Deric Rouault
B42 Informatique
Article original

Articles connexes

Liste des formats développés dans cet article
Format 0 Format nul
Format 1 Colonne d'un tableau xls
Format 2
Nom d'un fichier de données

Présentation

    Dans les différents articles de Rastell Toull qui décrivent des méthodes ou algorithmes spécifiques, et où des programmes d'application sont offerts en exemple d'implémentation, il est fait appel à des fichiers auxilliaires qui contiennent les valeurs des paramètres. Ces paramètres permettent à l'utilisateur de modifier simplement l'exécution du programme.

    Cet article décrit la structure interne de ces fichiers texte, qui suivent un format interne totalement défini selon une syntaxe bien précise.  Ce format interne répond à deux impératifs :

    1) Permettre à l'utilisateur de comprendre la nature des paramètres, et pouvoir aisément en modifier la valeur sans risque d'erreur à l'aide d'un éditeur de textes comme Notepad sous Windows.

    2) Permettre au programme d'identifier le fichier comme étant au format correct, en vérifier la syntaxe, et lire sans erreur les valeurs des paramètres.

    Une règle générale importante : pour tous les programmes Rastell Toull, les programmes comme les fichiers doivent tous se trouver dans le même répertoire.

Syntaxe générale

    Les fichiers au format Rastell Toull suivent tous une syntaxe générale qui est précisée dans cette section. Ces fichiers sont des fichiers textes avec une organisation séquentielle en lignes. Chaque ligne présente une information particulière. Il existe trois sortes de lignes I, C et V :

    I)  Les lignes qui contiennent des identificateurs (I comme Identificateur) commencent par \\ suivi d'un nom en majuscules. Ce nom est impératif et sa position et sa valeur sont controlées par le programme de lecture.

    C)  Les lignes qui contiennent des commentaires (C comme commentaire) commencent par //. Le texte qui suit n'est pas controlé par le programme et est là pour aider l'utilisateur. C'est en général une expression qui définit la valeur figurant sur la ligne suivante.

    V)  Les lignes qui contiennent des valeurs (V comme valeur) aasociées à des paramètres. Il peut s'agir de valeurs numériques entières ou réelles ou de chaines de caractères.

    La première ligne contient l'identificateur \\RASTELL-TOULL. Cet identificateur permet au programme de reconnaitre que le fichier lu appartient bien à la famille de fichiers recherchée.

    La seconde ligne contient l'identificateur \\FORMAT.

    La troisième ligne contient un entier qui code le format.

    La dernière ligne contient l'identificateur \\FINEND.

    Ce qui suit est ignoré, et on peut placer là tous les commentaires que l'on souhaite.

    Entre la troisième et la dernière ligne, on a des sections qui commencent par une ligne identificateur et ensuite autant de lignes commentaires que de lignes valeurs.

    On trouvera ci dessous les descriptions détaillées des différents formats, ainsi que des programmes aptes à les lire et à les vérifier.

    A chaque programme Scilab .sce est associé un fichier texte de même nom .txt

Le format 0

    Le format 0 décrit un format Rastell Toull minimaliste, avec seulement 4 lignes.

Télécharger le fichier RT_C127A2A1.txt.

    Le programme RT_C127A2A1.sce permet de lire le fichier RT_C127A2A1.txt et d'en vérifier la structure.

Télécharger le programme RT_C127A2A1.sce. Ce programme est organisé en 9 sections, que nous allons commenter

   Après la déclaration de 3 chaines constantes qui permettent d'identifier le programme, la section 1 les affiche.

    Dans la section 2, on vérifie que le répertoire courant est bien le répertoire où se trouve le programme. Pour cela on ouvre le fichier .sce qui contient le programme dans la variable fsce. Si cela génère une erreur (erreur différent de 0), alors le message d'erreur A2 est affiché, et le programme s'arrête.

    Le fichier auxilliaire qui a le même nom que le programme, mais une suffixe différent (txt au lieu de sce) est ouvert dans la section 3. Si ce fichier n'est pas trouvé, le message d'erreur A3 est affiché et le programme s'arrête.

    Dans l'étape A4 on lit la première ligne du programme et on la compare à l'entête attendue \\RASTELL-TOULL. En cas de différence, le message d'erreur A4 est affiché, et le programme s'arrête.
   

    Dans l'étape A5 on lit la seconde ligne du programme et on la compare à l'identificateur attendu \\FORMAT. En cas de différence, le message d'erreur A4 est affiché, et le programme s'arrête.

    L'étape A6 consiste à lire la valeur du format. Pour cela, on lit la ligne comme une chaine de caractères puis on la convertit en entier à l'aide de la fonction sscanf. Si la valeur est différente de zéro, le format n'est pas conforme et on affiche le message d'erreur A6 et on arrête le programme.

    Dans l'étape A7 on lit la quatrième et dernière ligne du programme et on la compare à l'identificateur attendu \\FINEND. En cas de différence, le message d'erreur A7 est affiché, et le programme s'arrête.

    Après l'étape A8 où le fichier auxilliaire est refermé, le programme s'achève à l'étape A9 par l'affichage d'un message de bonne fin d'exécution.

    Voici ce donne l'exécution du programme :


    A la fin de chaque section on affiche un message d'exécution correcte.

    Ce programme didactique est destiné à tester le bon fonctionnement de cette procédure. L'utilisateur peu tout à loisir introduire des modifications dans le fichier texte auxilliaire et vérifier que tous les controles prévus se déclenchent comme attendu.

    A priori, cette procédure de lecture et de controle peut apparaitre trop complexe et inutilement lourde. A l'expérience, il n'en est rien, et tout écart à la syntaxe, qui traduit une erreur ou une confusion, est immédiatement détectée : c'est une garantie de fonctionnement correct du programme.

Le format 1

    Le format 1 décrit une colonne de données dans un tableur au format xls.

    Après la première section \\FORMAT, on a une seconde section \\FICHIERS où est donné le nom du fichier xls à lire, puis une troisième section \\PARAMETRES où on désigne les rangs de la colonne et la première et la dernière ligne où se trouvent les valeurs à lire.

    Le programme RT_C127A3A1.sce permet de lire le fichier RT_C127A3A1.txt et d'en vérifier la structure. Ce programme, calqué sur le programme RT_C127A2A1.sce qui lit les fichiers auxilliaires au format 0, est organisé en 16 sections, que nous allons commenter. Les premières sections sont identiques.


    La section A7 lit et controle l'identificateur \\FICHIERS et la section A8 lit le nom du fichier xls dans la variable nom_fichier_xls.


    La section A9 lit et controle l'identificateur \\PARAMETRES et les section B10 à B12 lisent les 3 valeurs entières qui désignent la fraction de colonne du tableau xls contenant les valeurs à considérer.


    Les dernières sections B13 à B16 consistent à détecter la fin de fichier FINEND, à fermer le fichier, à afficher pour controle les valeurs lues et afficher un message de bonne fin d'éxécution.

    Voici ce donne l'exécution du programme :

Le format 2

    Le format 2 décrit un format Rastell Toull qui référence le nom d'un fichier de données à lire.

    Après la première section \\FORMAT, on a une seconde section \\FICHIERS où est donné le nom du fichier xls à lire.


    Télécharger le fichier RT_C127A4A1.txt.

    Le programme RT_C127A4A3.ada permet de lire le fichier RT_C127A4A1.txt et d'en vérifier la structure.




Voici ce que donne l'éxécution du programme rt_c127a1a3.exe.


Le format 3

    Le format 3 décrit ...