Opérations sur les fichiers

Les langages de programmation permettent de:

Les erreurs d'accès

ErreurAcces.jpg, 71kB

Le système d'exploitation est responsable de la gestion des fichiers d'un ordinateur. Toute opération sur un fichier se fait donc nécessairement par l'intermédiaire du système d'exploitation. Lorsqu'un programme effectue une opération sur un fichier, il faut que le système d'exploitation autorise cette opération, sans quoi il se produira une erreur d'accès. Voilà quelques unes des erreurs les plus fréquentes:

Ouverture et fermeture d'un fichier

L'accès à un fichier par programmation fonctionne toujours selon le même principe:

A quoi sert l'ouverture d'un fichier ?

Ouvrir un fichier sert (entre autres) à informer le système d'exploitation que l'on a l'intention d'y accéder. C'est à ce moment là que le système peut refuser l'accès au fichier, ce qui provoquera une erreur d'exécution du programme.

A quoi sert la fermeture d'un fichier ?

La fermeture d'un fichier sert (entre autres) à signaler au système d'exploitation que le fichier n'est plus utilisé par le programme, ce qui permettra à un autre programme (éventuellement d'un autre utilisateur) d'y accéder.

Ouverture et fermeture d'un fichier en Python

L'ouverture d'un fichier en Python se fait en utilisant la fonction open:

 f = open (chemin du fichier, mode)

Le mode est une chaine de caractères qui définit la manière d'ouvrir le fichier. Nous en parlerons plus précisemment dans la suite du cours.

Après l'exécution de cette instruction, la variable f sera une variable de type fichier. Elle nous permettra d'agir sur le fichier par différents sous-programmes que nous verrons plus loin. C'est en quelque sorte la représentation interne (en mémoire vive) du fichier.

La fermeture utilise la procédure close. Plus précisement, si f est la variable représentant le fichier en mémoire, l'instruction

 f.close ()

ferme le fichier.

Cette écriture utilise malheureusement la notation objet qui ne sera abordée que plus tard, dans le cours consacré à la programation objet en Python. Il en sera d'ailleurs de même pour tous les "sous-programmes" (ce ne sont pas réellement des sous-programmes au sens strict du terme) associés aux fichiers.