130 likes | 276 Views
Gestion de FICHIERS. Les Fichiers. Historique : On parle de notion d’organisation, c’est le mode de rangement des informations dans le fichier. Il existe 3 organisations : - Organisation séquentielle - Organisation séquentielle indexée - Organisation relative. L’ accès aux données.
E N D
Les Fichiers • Historique : • On parle de notion d’organisation, c’est le mode de rangement des informations dans le fichier. Il existe 3 organisations : • - Organisation séquentielle • - Organisation séquentielle indexée • - Organisation relative
L’ accès aux données • En plus de la notion de rangement des données (organisation), il faudra utiliser un mode d’accès aux informations structurées. • Quand l’organisation est séquentielle on utilise l’accès séquentielle. • Quand l’organisation est séquentielle indexée, on utilise l’accès direct, ou séquentielle. • Quand on utilise l’organisation relative, on peux utiliser l’accès direct ou séquentielle.
L’organisation Séquentielle • A partir d’une structure : • N Client • Nom • Adresse 3 infos appelées des pointeurs (adresse) seront utilisées: • pointeur de début de fichier • pointeur de lecture – écriture • pointeur de fin de fichier
L’organisation séquentielle indexée • On utilise un index (toujours trie par ordre croissant sur la valeur de l’identifiant) • Organisation séquentielle index permet aussi bien un accès séquentielle que direct ou séquentiel à l’info. • Son principe est base sur l’existence d’ une table d’index composée de 2 parties. • Identifiant : clef qui sera systématiquement trie par ordre croissant afin d’optimiser la recherche de l’info. • L’adresse : Composé dune adresse physique (no cylindre, piste, secteur) qui indiquera au bras de lecture /écriture ou se positionner pour trouver l’info. Cette info est envoyer au contrôleur du DD à travers le bus de commande et de contrôle.
L’organisation relative • Elle a pour principe de se servir de l’identifiant qui doit être strictement numérique ainsi que de la longueur de la structure d’enregistrement afin de déterminer la place a allouer pour le futur fichier. • Ex : pour stocker le client N 5 avec une structure de 80 caractères, l’emplacement sera structure de la manière suivante 5*80. • Cette valeur donnera l’emplacement ou devra commencer l’écriture de ce client. • Cette organisation est utiliser pour de tout petit fichier et elle permet aussi bien l’accès direct que l’accès séquentielle.
Ouverture - Fermeture • La fonction Open ouvre un fichier séquentiel ou un fichier à accès direct. Autres Mode : Input, Output, Append OpenNomDuFichierFor Output As# NuméroFichier • Tous les fichiers ouverts portent un numéro. NuméroFichier= FreeFile • La fonction FreeFile retourne le premier numéro de fichier libre. • Close #1
Écriture • Write: instruction pour écrire dans un fichier. • Le premier paramètre indique le numéro du fichier et les paramètres suivants, les données à écrire séparées par des virgules. • Write #NuméroFichier, Données à écrire • Open "c:\TEST.TXT" For Output As #NuméroFichier • Write #NuméroFichier, "Bonjour à tous BTS ", 234, "test", 123 • Write #NuméroFichier, V1 ,V2,V3, Vn
Lire un fichier séquentiel • Ouvrir le fichier en mode lecture (For Input) • OpenNomFichierFor Input As #Numfichier • Input : Instruction pour lire un fichier Lit des données dans un fichier séquentiel ouvert et les attribue à des variables. • Le premier paramètre indique le numéro du fichier et les paramètres suivants , les variables qui reçoivent les données lues. • Input #Numfichier, V1,V2,V3,Vn • Input #MonNumFic, Montext1, MonNombre, Montext2, Madate2 • Il faudra tester le EOF ( end of file du fichier) Ex : do while not eof(1) input #1, V1,V2,Vn traitement loop • Ouverture Globale LOF : Lenght Of File = Taille du fichier TxtFichier.Text = Input(LOF(Numfichier), Numfichier)