Fichiers. Nicolas Pronost

Documents pareils
Dans le chapitre 1, nous associions aux fichiers ouverts des descripteurs de fichiers par lesquels nous accédions aux fichiers.

1 Lecture de fichiers

Introduction à NetCDF

SYSTÈME DE GESTION DE FICHIERS

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2

Programmation impérative

Conversion d un entier. Méthode par soustraction

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

TP 1. Prise en main du langage Python

Logiciel de Base. I. Représentation des nombres

Représentation des Nombres

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Représentation d un entier en base b

Licence Sciences et Technologies Examen janvier 2010

Flux de données Lecture/Ecriture Fichiers

IFT2880 Organisation des ordinateurs et systèmes

Cours de Système : Gestion de Fichiers

Initiation à la Programmation en Logique avec SISCtus Prolog

Cours d algorithmique pour la classe de 2nde

Cours Informatique 1. Monsieur SADOUNI Salheddine

TP3 : Manipulation et implantation de systèmes de fichiers 1

Codage d information. Codage d information : -Définition-

Programmation C. Apprendre à développer des programmes simples dans le langage C

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

Informatique Générale

Algorithme. Table des matières

1 TD 2 : Construction d'une chier Acrobat et envoi par

Compléments de documentation Scilab : affichage de texte et formatage de nombres

Présentation du langage et premières fonctions

Les opérations binaires

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

Plan du cours. Historique du langage Nouveautés de Java 7

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

GESTION DES FICHIERS C/UNIX

Structure fonctionnelle d un SGBD

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

SNT4U16 - Initiation à la programmation TD - Dynamique de POP III - Fichiers sources

Initiation à la programmation en Python

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

EXERCICES DE REVISIONS MATHEMATIQUES CM2

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

Réplication des données

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

2 Comment fonctionne un ordinateur, dans les grandes lignes

Manuel d'installation de GESLAB Client Lourd

Les fichiers. Chapitre 4

nom : Collège Ste Clotilde

Chapitre 10 Arithmétique réelle

3 L'arborescence Windows

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

1. Structure d'un programme FORTRAN 95

Dans l'article précédent, vous avez appris

V- Manipulations de nombres en binaire

ENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque

INSTALLATION ET CONFIGURATION DE OPENLDAP

L informatique en BCPST

Programmation système I Les entrées/sorties

Cours 14 Les fichiers

DM 1 : Montre Autoquartz ETA

1 Introduction au codage

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

STAGE IREM 0- Premiers pas en Python


Algorithmique et Programmation, IMA

Génie Logiciel I. Cours VI - Typage statique / dynamique, fonctions virtuelles et classes abstraites, flots d entrées / sorties, et string

TD d économétrie appliquée : Introduction à STATA

IN SYSTEM. Préconisations techniques pour Sage 100 Windows, MAC/OS, et pour Sage 100 pour SQL Server V16. Objectif :

Structure du format BMP, sa lecture, sa construction et son écriture

La mémoire. Un ordinateur. L'octet. Le bit

Unix/Linux I. 1 ere année DUT. Université marne la vallée

GlobalScape Secure FTP Server Buffer Overflow

Guide de prise en main de la solution NetExplorer

Introduction à l algorithmique et à la programmation (Info 2)

TP Codage numérique des caractères. Un ordinateur ne manipule que des 0 et des 1 : Comment alors code-t-il du texte?

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

Boîte électronique. Découverte des principales fonctions d une messagerie électronique. (et les pièces jointes)

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

IV- Comment fonctionne un ordinateur?

Programmation système de commandes en C

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Le système de gestion des fichiers, les entrées/sorties.

Conventions d écriture et outils de mise au point

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Fiche animateur : module écriture collaborative

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Gestion des sauvegardes

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Procédure appropriée pour éditer les diagrammes avec ECM Titanium

Importer les fichiers élèves - professeurs du secrétariat

Quel que soit L élève - Il est valorisé par l utilisation d un outil technologique haut de gamme - Il peut travailler seul et à son rythme.

Introduction au Système d Exploitation Unix/Linux

Le chiffre est le signe, le nombre est la valeur.

Construction d un fichier de zone Déboguage et dépannage

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Transcription:

Fichiers Nicolas Pronost

Différents types de fichiers Format des informations Fichiers.py Fichiers.txt «texte» (codes de caractères) Fichiers de configuration Linux Fichiers.xml,.html Etc. Fichiers.pyd «binaire» (comme en mémoire) Fichiers mp3, avi Fichiers pdf Fichiers exécutables Etc. 2

Fichier «texte» Les octets du fichier ne contiennent que des codes de caractères Les données numériques doivent être converties en caractères Exemple: un nombre au format IEEE 754 simple précision 0 1 0 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 signe exposant décalé pseudo-mantisse Décodage: nombre = 1.3359375 2 6 = 85.5 = 8.55e1 Ecriture dans le fichier (virgule fixe, 3 chiffres après la virgule) des caractères: 8 5. 5 0 0 00111000 00110101 00101110 00110101 00110000 00110000 (56= 8 ) (53= 5 ) (46=. ) (53= 5 ) (48= 0 ) (48= 0 ) 3

Fichier «texte» Les octets du fichier ne contiennent que des codes de caractères Les données numériques doivent être converties en caractères Exemple: un nombre au format IEEE 754 simple précision 0 1 0 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 signe exposant décalé pseudo-mantisse Décodage: nombre = 1.3359375 2 6 = 85.5 = 8.55e1 Ecriture dans le fichier (virgule flottante, 3 chiffres pour la mantisse) des caractères: 8. 5 5 e 1 00111000 00101110 00110101 00110101 01100101 00110001 (56= 8 ) (53=. ) (46= 5 ) (53= 5 ) (101= e ) (49= 1 ) 4

Fichier «texte» Avantages portabilité fichier lisible (et facilement modifiable) avec un simple éditeur de texte Inconvénients coût en temps induit par les conversions nécessaires penser à écrire suffisamment de décimales pour ne pas perdre en précision numérique 5

Fichier «binaire» On recopie l information comme elle figure en mémoire Exemple 0 1 0 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 signe exposant décalé pseudo-mantisse Ecriture dans le fichier (regroupement en octet juste pour lisibilité) 01000010 10101011 00000000 00000000 Avantages fichier plus compact (n utilise pas de codage intermédiaire) lecture/écriture sans conversion = manipulation plus rapide pas de formatage de présentation = pas de perte de précision Inconvénients fichier illisible (et difficilement éditable) par un éditeur de texte il faut gérer les problèmes de portabilité il faut savoir qu est ce qui est écrit pour pouvoir le relire 6

Ouvrir un fichier Il nous faut passer par une instance de la classe file En utilisant la fonction open file fichier = open (nomfichier [,modeaccès][, buffering]) nomfichier est le nom du fichier à ouvrir, avec chemin relatif (au fichier Python) ou absolu modeaccès détermine le mode d ouverture buffering <= 0 : pas de buffer 1 : buffer de ligne > 1 : taille du buffer 7

Mode d accès Les modes d accès à un fichier sont r rb r+ rb+ w wb w+ wb+ a ab a+ ab+ ouverture en lecture seule, lecture à partir du début, en texte ouverture en lecture seule, lecture à partir du début, en binaire ouverture en lecture/écriture, lecture à partir du début, en texte ouverture en lecture/écriture, lecture à partir du début, en binaire ouverture en écriture seule, écrase le contenu précédent, en texte ouverture en écriture seule, écrase le contenu précédent, en binaire ouverture en écriture/lecture, écrase le contenu précédent, en texte ouverture en écriture/lecture, écrase le contenu précédent, en binaire ouverture en ajout, écriture à partir de la fin, en texte ouverture en ajout, écriture à partir de la fin, en binaire ouverture en ajout/lecture, écriture à partir de la fin, en texte ouverture en ajout/lecture, écriture à partir de la fin, en binaire 8

Attributs de la classe file Une fois un fichier ouvert, vous obtenez une instance de la classe file Avec les fonctions membres file.closed : retourne vrai si le fichier est fermé, faux sinon file.mode : retourne le mode d accès utilisé pour ouvrir le fichier file.name : retourne le nom du fichier Exemple monfichier = open ("fichier.txt", 'wb') print("nom du fichier: ", monfichier.name) print("fermé? ", monfichier.closed) print("mode d accès: ", monfichier.mode) 9

Fermeture d un fichier Quand les opérations d écriture et de lecture sont finies, il ne faut pas oublier de fermer le fichier monfichier.close(); Afin de notifier l OS qu il peut libérer la ressource et la rendre disponible à nouveau En effet, deux programmes (ou deux blocs d instructions d un même programme) n ont pas le droit d avoir le même fichier ouvert en même temps pour des raisons évidentes de conflits 10

Ecriture dans un fichier La procédure write écrit n importe quelle chaîne de caractères dans un fichier ouvert les string de Python peuvent avoir des données binaires Attention, cette procédure n ajoute pas d espace ni de retour à la ligne à la fin de la chaîne de caractères Exemple monfichier = open ("fichier.txt", 'w') monfichier.write("l informatique c est génial") monfichier.write(" et les maths...\naussi!") monfichier.close() contenu de «fichier.txt» : l informatique c est génial et les maths... aussi! 11

Ecriture dans un fichier La procédure writelines permet décrire une liste de chaînes de caractères dans le fichier Exemple monfichier = open ("fichier.txt", 'w') liste = ["l informatique c est génial", " et ", "les maths...\naussi!" monfichier.writelines(liste) monfichier.close() produit le même contenu que précédemment 12

Lecture depuis un fichier La fonction read lit une chaîne de caractères depuis un fichier ouvert string chaine = monfichier.read([nboctets]) Le paramètre optionnel NbOctets indique le nombre d octets à lire depuis le fichier Exemple (sur le fichier produit juste avant) monfichier = open ("fichier.txt", r') str = monfichier.read(10) print("chaine lue: ",str) monfichier.close() contenu de str après exécution : «l informat» le reste serait lu grâce à un autre appel à read lit jusqu à la fin si pas de taille en paramètre 13

Lecture depuis un fichier Vous pouvez aussi lire le fichier ligne par ligne avec la fonction readline Exemple string chaine = monfichier.readline() monfichier = open ("fichier.txt", r') str1 = monfichier.readline() str2 = monfichier.readline() str3 = monfichier.readline() monfichier.close() contenu après exécution str1 = «l informatique c est génial et les maths...\n» str2 = «aussi.» str3 = 14

Lecture depuis un fichier Une autre fonction utile est readlines qui retourne la liste des lignes restantes jusqu à la fin du fichier Exemple monfichier = open ("fichier.txt", r') strs = monfichier.readlines() monfichier.close() Contenue de strs après exécution : [«l informatique c est génial et les maths...\n», «aussi.»] 15

Appels systèmes sur les fichiers Dans Python, on peut directement appeler des fonctions systèmes de manipulations des fichiers grâce au module os indépendantes du système d exploitation utilisé Renommer un fichier os.rename(nomcourant,nouveaunom) Supprimer un fichier os.remove(nomfichier) Créer un répertoire os.mkdir(nomrepertoire) Changer de répertoire courant os.chdir(nomrepertoire) Supprimer un répertoire os.rmdir(nomrepertoire) 16