Posted by : aymen Tuesday, 17 December 2013

/les fichiers :
Un fichier est un ensemble de données de même type stocké sur CD,disque dur,….
I/Organisation et type d’accès :
L’organisation de données dans un fichier est linéaire c.a.d enregistrement après enregistrement

Enreg 0 Enreg 1 Enreg2 …… …… Enreg n

Le pointeur du fichier est un entier qui commence par 0 il représente la position de la prochaine fonction d’entrée/sortie (lecture ou écriture).
Pour placer le pointeur sur le 1er bloc c.a.d enreg 0 
On dit qu’ il faut le mettre à zéro (reset) 
Il éxiste principalement 2types :
- fichier à accés sequentiel 
- fichier à accés relatif (direct)

II/Fichiers à accès séquentiel :

Déclaration
Algo
TDNT
Type 
typ_fichier = fichier de typ _composant

Exple : Bac = fichier d’élève

TDO
Objet T/N Rôle
Nom_logique 
Exple :
S I typ_fichier

Bac Fichier de typ_composant 

Fichier pour élève

Pascal : 
Type Nom_fichier = file of type_comp ;
Var Nom_logique = nom_fichier

Exple : 
Type Eleve=record
Nom , classe : string ;
End ;
Bac =file of eleve ; 
Var SI : Bac ;

1/ Traitements sur le fichier :
a- Association : 
Le nom de fichier dans lequel utilisateur va mettre les données pocède un nom extèrne sur le périphérique d’E_S et un nom intèrne qui existe dans le programme. Il faut donc associer le nom intèrne (logique) au nom extèrne (physique).

Syntaxe :
Algorithmique Pascal 
Associer (nom logique )
(nom physique) Assign (nom_logique)
(nom_physique) ;

Rqs : généralement le fichier .dat est un fichier de données (data) 
Si le fichier associer dans le programme n’éxiste pas ou le chemin d’accés n’éxiste pas,le programme afiche une erreur Runtime error…at…

b-Ouverture :
Méthode1
Ouvrir et éffacer le contenu du fichier (si le fichier n’éxiste pas sera creér)
Syntaxe :
Algorithmique Pascal 
Recréer(nom logique) Rewrite(nom_logique) ;
Méthode2
Ouvèrture d’un fichier éxistant avec remise a zéro de pointeur 
Syntaxe :
Algo Pascal
Ouvrir (nom logique) Reset (nom_logi) ; 

c-Ecriture dans un fichier :
Ecriture ou modification d’une valeur ou d’un enregistrement

Syntaxe :
Algo Pascal
Ecrire (nom log, variable) Write(nom_log,variable) ;

Exple : 
A P
Ecrire (Si, élève . nom) Write (Si, eleve . nom) ;

N.B : Aprés chaque écriture, le pointeur de fichier avance automatiquement d’une position

d-Lecture :
Syntaxe :
Algo Pascal
Lire (nom log, variable) Read (nom_log, variable) ;

e-Fermeture :
Il faut fermer les fichiers utlisées a la fin de traitement
Syntaxe :
Algo Pascal
Fermer (nom log) Close (nom_log) ;

III/ les fichiers à accès direct :
Syntaxe : 
Algorithmique Pascal 
Pointer (nom logique , numéro) Seek (nom_logique, numero) ;

Syntaxe :
Algorithmique Pascal
Taille_fichier (nom logique) Filesize (nom_logique) ;

a-Fonction position_fichier :

Algorithmique Pascal
Position_fichier(nom logique) Filepos (nom_logique) ;

b-Procédure effacer :

Algorithmique Pascal
Effacer (nom logique) Erase (nom_logique) ;

c-Procédure vide_buffer :
Algorithmique Pascal
Renommer (ancien nom logique, nouveau nom logique) Rename (ancien_nom_logique, nouveau_nom_logique) ;

d-Procédure tronquer

Algorithmique Pascal
Tronquer (nom logique) Truncate (nom_logique) ;

IV/les fichiers texte :
En Algorithmique :
Tableau de déclaration des objets
Objet Type/Nature Rôle
Nom_logique Texte Fichier texte…. 

En Pascal : 

Var nom_logique : texte ;

a-Foction fin_ligne :

Algorithmique Pascal
Fin_ligne (nom logique) Eoln (nom_logique) ;

b-Foction chercher_fin_ligne :
Algorithmique Pascal
Chercher_fin_ligne (nom logique ) Seekeoln (nom_logique) ;

c-Fonction chercher_fin_fichier :
Algorithmique Pascal
Chercher_fin_fichier (nom logique) Seekeof (nom_logique) ;

d-Procédure ajouter : 
Algorithmique Pascal
Ajouter (nom logique) Append (nom_logique) ;
e-Procédure lire_nl :
Algorithmique Pascal
Lire_nl (nom logique) Readln (nom_logique) ;

f- Procédure ecrire_nl :
Algorithmique Pascal
Ecrire_nl (nom loqique) Writeln (nom_logique) ;

Leave a Reply

Subscribe to Posts | Subscribe to Comments

Welcome to My Blog
Blogger Tips and TricksLatest Tips For BloggersBlogger Tricks
Blogger Tricks

Popular Post

Blogger templates

إتصل بنا

Aymen Jaballi : 27380474
Sofiane Ben Khemis : 23656535

Labels

Notice: Undefined variable: code_pub_serv in /home/webestools/www/page/gen_iphost.php on line 20

Blogger news

Powered by Blogger.

Wikipedia

Search results

Translate

من أنا

Featured Posts

- Copyright © BAC INFO DJERBA --- - Designed by sofiane ben khemis and aymen jaballi -