Les ouvertures de fichier

Il existe plusieurs manière d'ouvrir un fichier selon que l'on désire lire ou écrire dedans.

Type d'ouverture

Description

open(identificateur_de_fichier)

Ouvre un fichier appelé identificateur_de_fichier et crée un identificateur de fichier du même nom. Retourne vrai si l'opération s'est effectuée avec succès, faux sinon. Le fichier n'est ouvert qu'en lecture.

open(identificateur_de_fichier, "<nom_de_fichier")

Ouvre un fichier appelé nom_de_fichier et crée un identificateur de fichier du nom nom_de_fichier. Retourne vrai si l'opération s'est effectuée avec succès, faux sinon. Le fichier n'est ouvert qu'en lecture.

open(identificateur_de_fichier, ">nom_de_fichier")

Ouvre un fichier appelé nom_de_fichier et crée un identificateur de fichier du nom nom_de_fichier. Retourne vrai si l'opération s'est effectuée avec succès, faux sinon. Le fichier est ouvert et (re)créé en écriture.

open(identificateur_de_fichier, ">>nom_de_fichier")

Ouvre un fichier appelé nom_de_fichier et crée un identificateur de fichier du nom nom_de_fichier. Retourne vrai si l'opération s'est effectuée avec succès, faux sinon. Le fichier est ouvert en écriture. Le contenu du fichier est préservé, il y a ajout à sa suite.

open(identificateur_de_fichier, "+>nom_de_fichier")

Ouvre un fichier appelé nom_de_fichier et crée un identificateur de fichier du nom nom_de_fichier. Retourne vrai si l'opération s'est effectuée avec succès, faux sinon. Le fichier est ouvert en écriture et en lecture.

Exemples d'utilisation :

if (open(IDENTFICH, ">test.txt")){
        print IDENTFICH ("Une ligne de test 1. \n");
        print IDENTFICH ("Une ligne de test 2. \n");
        close(IDENTFICH);
}


if (open(IDENTFICH, ">>test.txt")){
        print IDENTFICH ("Une ligne de test 3. \n");
        print IDENTFICH ("Une ligne de test 4. \n");
        close(IDENTFICH);
}


$date = (stat($ARGV[0]))[9];

($sec, $min, $hr, $jour, $moi, $année, $jour_sem, $année_jul, $dst) = localtime($date);
print("$ARGV[0] fut modifié pour la dernière fois à $hr h $min : $sec.\n");


suite-index