PROGRAMMATION ET ENSEIGNEMENT

Slides:



Advertisements
Présentations similaires
Interactivité et Lingo Interactivité - spécifier le déroulement en fonction des actions de l’usager Ex: Déroulement si l’usager clique Choix dans une liste.
Advertisements

ENT ENVOLE – Mes Dossiers Académie de la Réunion.
Guide de l'enseignant SolidWorks, leçon 1 Nom de l'établissement Nom de l'enseignant Date.
TP 1 BIS Programmation structurée à l’aide de fonctions (FC) et de bloc fonctionnels (FB)
Cours 4 data frames. Modes ouiNumérique, caractère, complexe logique Liste list ouiNumérique,caractère,complexe logiqueSérie temporelle ts OuiNumérique,caractère,complexe.
Comment utiliser le débogueur de Visual Studio /8/2015 INF145 1 Créé par Julien Galarneau Allaire, révisé par Eric Thé S.E.G.
1 Programmation en C++ Cycle de vie ● La vie d'un objet ● Destructeur ● Gestion de mémoire dynamique.
1 Programmation en C++ IO en C++/SL ● Standard Library ● Types, objets pour IO ● L'entrée de clavier ● Sortie à l'écran ● Fichiers.
Utiliser le nouveau site internet du lycée niort/
DIAGRAMME DE DEPLOIEMENT Exposé de: MBALLA MEKONGO Michèle MBOUNA FEUZE William SIEYADJEU Alex Lionel CHOPGWE Leonard NDUMATE Landry TIDJON Lionel.
Réaliser un CD lecteur de salon (photos ou vidéos) pouvant être lu
Cours 08 SYSTÈME DE FICHIERS
Premiers pas avec PowerPoint
NOTIONS INFORMATIQUES : RAPPEL
UE2 - M22 Licence acoustique
Cross-Plateform Cours JavaScript
Support et Maintenance SIAN : MDEL partenaires
TIC (Techniques de l’Information et de la Communication)
DropBox Projet App’Ifa.
Manuel de redimensionnement et de conversion de photos sur PAINT
Utilisation de Windows
LES TABLEAUX EN JAVA.
Session 1 6 mars 2017 Plateforme ICONICS Justine Guégan
Guide d’utilisation.
Ajouter le code dans une page html
Initiation aux bases de données et à la programmation événementielle
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Les composants informatiques
Javadoc et débogueur Semaine 03 Version A16.
Principes de programmation (suite)
Réalisation d'agents de surveillance Zephir
Algorithmique & Langage C
Module 3 comment ranger son ordinateur ?
Semaine #4 INF130 par Frédérick Henri.
Piloter un robot mbot à distance avec retour vidéo
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Notion De Gestion De Bases De Données
Création Et Modification De La Structure De La Base De Données
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Cours N°10: Algorithmiques Tableaux - Matrices
PROGRAMMATION ET ENSEIGNEMENT
Package R Markdown: Un outil pour générer des pages html avec R Studio
Gestion des fichiers Niv2
Programmation Android Bases De Données, SQL-lite
Exercice PHP DEUST TMIC
TIC (Techniques de l’Information et de la Communication)
Formation sur les bases de données relationnelles.
Programmation Android Première application Android
SALLE DES MARCHES PUBLICS EN LIGNE
Révision du format des données
Assembleur, Compilateur et Éditeur de Liens
NUMERATION et REPRESENTATION DES NOMBRES
B.Shishedjiev - Informatique
Module 13 : Implémentation de la protection contre les sinistres
Langages de programmation TP11
Windows 7 NTFS.
Chapitre 3: Les scriptes
Reconnaissance de formes: lettres/chiffres
Logiciel de présentation
PRO1026 Programmation et enseignement
Système de gestion de contenu de sites web
Elles contiennent des informations autre que géométriques
PROGRAMMATION ET ENSEIGNEMENT
Les différents modes de démarrage de Windows
Le langage C# : Partie 1.
03/05/2019 L’organisation et la gestion des fichiers sur le site collaboratif Martine Cochet 2SitePleiadeGestionFichiers.
STOCKAGE DE DONNEES EN LIGNE
STS Web Services libres Gérer les services libres
Python Nicolas THIBAULT
Type Tableau Partie 1 : Vecteurs
Transcription de la présentation:

PROGRAMMATION ET ENSEIGNEMENT

Contenu du cours 8 Notions de Fichiers Notes de cours (site ftp UQTR) Introduction Namespace IO Création d’un fichier texte Manipulation d’un fichier texte Manipulation d’un fichier Binaire Notes de cours (site ftp UQTR) https://openclassrooms.com/courses/apprenez-a-programmer-en-vb-net/les-fichiers-partie-1-2 https://docs.microsoft.com/fr-fr/dotnet/visual-basic/developing-apps/programming/drives-directories-files/how-to-read-from-binary-files

Introduction Les fichiers peuvent être imaginés comme une suite d’octets stockés sur disque. Il est alors possible d’enregistrer des données, ensuite de les récupérer (lire), et ce, même si le programme s'est fermé entre temps (ce qui n'était pas possible avec les variables). Il sera donc possible de créer différents types de fichiers: de configuration, sauvegarder des textes, des images, des chiffriers, des données binaires (ex: copie de matrices etc).

Introduction Sur le disque dure de votre ordinateur (ou tout autres dispositifs de stockage: ex. SSD), vous pouvez parcourir suivant un système d'arborescence : le disque dur contient des dossiers, ces dossiers contiennent des fichiers (récursif : les disques durs peuvent contenir des fichiers et les dossiers d'autres dossiers). Le disque dur contient toutes vos données ; le dossier permet de gérer, organiser et hiérarchiser votre disque dur Les fichiers contiennent des données comme telles essentiellement sous forme binaire.

Introduction Ces données sous forme binaire sont codés selon le type de fichier sauvegardé. Les fichiers textes contiennent des caractères codés chacun sur un (Code ASCII) ou deux (code Unicode 16) octets La norme ASCII est la norme de codage de caractères standardisée. Chaque caractère est un groupement de 8 bits dans la une table ASCII. Exemple : la suite de bits (01100011) correspond au caractère "c" 

Introduction Sachant maintenant qu’un fichier texte est une suite de caractères (octets) il est alors possible de comprendre la taille de vos fichiers. Windows note les tailles en ko (kilooctets) pour les petits fichiers, jusqu'aux Mo (mégaoctets), voire aux Go (gigaoctets) : 1 ko = 1024 octets, 1 Mo = 1 048 576 octets et 1 Go = 1 073 741 824 octets.

Namespace IO Microsoft, au travers de son framework (qui est une bibliothèque contenant des centaines de classes, fonctions, objets) offre les outils nécessaires pour manipuler les fichiers

Namespace IO Ce namespace (un namespace représente un dossier contenant des classes et fonctions spécifiques) est le namespace IO. Ce namespace IO (Entrée/Sortie) contient des fonctions et objets pour manipuler les fichiers, mais aussi des fonctionnalités permettant de gérer les communications inter-processus, la communication série et la compression Ce namespace comprend la classe FileStream qui permet de créer un objet de type FileStream et de le manipuler. La classe File ne permet pas de créer un objet, mais seulement de manipuler une instance d’un objet FileStream

Namespace IO Il existe aussi une classe Directory permettant de manipuler les répertoires. Pour pouvoir manipuler un objet FileStream, il faut d’abord créer (une instance, instancier) un objet et ensuite le manipuler Pour créer un objet nous utilisons le mot réservé: New

Création d’un fichier texte (Voir: VBNET-EX19-FICHIER-TEXTE) Avant de créer un fichier il faut tout d’abord déclarée une variable permettant d’identifier le fichier Dim MonFichier As IO.FileStream La variable MonFichier est de type  FileStream Pourquoi le IO, sachant que nous utilisons le namespace IO, il faut donc faire IO. avant de pouvoir accéder aux membres de ce namespace

Création d’un fichier En insérant l’énoncé:  Imports System.IO tout en haut de votre programme, avant la déclaration du module. Cette ligne va permettre d’omettre le IO. avant les fonctions utilisant ce namespace L’énoncé  = New IO.FileStream permet d'assigner (initialiser) une valeur à notre variable dès sa déclaration Le mot-clé New, permets de créer un nouvel objet de type FileStream.

Création d’un fichier texte Lorsque nous instancions (créons) un objet, la classe utilisée pour déclarer l'objet fait appel à son constructeur. Le mot "constructeur" est spécifique à la POO. Un constructeur est une méthode appelée pour initialiser certaines propriétés de cet objet, donc parfois ce constructeur nécessite des arguments. Le constructeur de FileStream accepte plusieurs combinaisons d'arguments possibles. Par exemple : le Path du fichier (en String) avec lequel nous allons travailler, et un argument qui nous permet de déterminer comment ouvrir ou créer le fichier (de type IO.FileMode)(mode d’ouverture du fichier)

Création d’un fichier texte Le Path, signifie le chemin d’accès au fichier et peut être de deux types : Absolu : le chemin n'a pas de référence, mais n'est pas exportable (ex : C:\Windows\System32… est un chemin absolu) Relatif : le chemin prend comme référence le dossier d'exécution de notre programme (ex : FichierEX19.txt sera dans le même dossier que le programme) Il est donc préférable d'utiliser des chemins relatifs dans nos programmes, à moins que vous ne soyez certains de l'emplacement des fichiers que vous voulez manipuler.

Création d’un fichier texte Le  FileMode Dans notre exemple, le Path est relatif, le fichier FichierEX19.txt sera créé s'il n'existe pas, sinon il sera ouvert. En inscrivant l'argument IO.FileMode.OpenOrCreate.

Création d’un fichier texte FileMode: différents mode d’ouverture

Création d’un fichier texte L’option FileMode.OpenOrCreate (aussi remplaçable par le chiffre 4), rend notre programme plus flexible En utilisant l'argument FileMode.CreateNew, le premier lancement du programme se déroulera bien, mais lors du second lancement une erreur se produira parce que le fichier existe déjà. Cette instruction permet d’ouvrir le fichier FichierEX19.txt (création s'il n'existe pas) et ce fichier peut alors être référencé par la variable MonFichier

Manipulation d’un fichier texte (Voir: VBNET-EX19-FICHIER-TEXTE) Composantes de l’application: Les boutons de vidage des textboxEntree et TextBoxSortie, une simple instruction pour remplacer leur contenu par un " " Déclaration  globale de la variable référant au fichier MonFichier, de façon à ce qu'il soit accessible dans toutes les fonctions. Lors du Load(), le fichier est ouvert Lors de l'événement FormClosing (traduisible par « fenêtre en cours de fermeture », nous disposons du fichier par l’appel à la méthode Dispose() La fonction Dispose() permet de vider les ressources mémoire que prenait le fichier. En résumé, cela le ferme. Le fichier est ouvert et chargé à l'ouverture du programme et fermé à la fermeture. Deux boutons Lire et Ecrire, donc Ecrire dans un fichier et Lire dans un fichier (FichierEX19.txt)

Manipulation d’un fichier texte (Voir: VBNET-EX19-FICHIER-TEXTE) Écriture (voir Sub BEcrireSortie_Click()) Instruction:  MonFichier.CanWrite est une propriété de l'objet. Elle nous informe sur la possibilité d'écriture dans notre fichier. (TRUE veut dire qu’il est possible d’écrire) Un tableau de Byte, 1025 octets, est ensuite déclaré, pour le stockage de caractères Un compteur est aussi déclaré, il sert d’indice dans un vecteur de caractères Le For Each permet de parcourir tous les caractères contenus dans le textboxTextBoxSortie.Text.ToCharArray. La fonction ToCharArray permet, comme son nom anglais l'indique, de convertir en tableau de Char. Pour chaque caractère donc, ce caractère est entré dans la variable Lettre Chaque lettre est insérée dans un tableau de Byte. Mais sachant que les Byte et les Char ne sont pas homogènes, il faut passer par une fonction qui va récupérer la valeur binaire de notre caractère (transformation ASCII => 8 Bits grâce à la fonction Asc()) de façon à pouvoir l'inscrire dans le Byte Le compteur est incrémenté pour pouvoir écrire chaque caractère dans un emplacement du vecteur différent Si la case est cochée on déplace le curseur au début du fichier Le contenu de notre tableau en indiquant combien de Byte  (avec compteur) à écrire dans le fichier

Manipulation d’un fichier texte (Voir: VBNET-EX19-FICHIER-TEXTE) Notions de curseurs de fichier Un curseur peut être représenté par un petit charriot qui avance dans notre fichier. Lorsqu'on lui demande de lire ou d'écrire, ce petit charriot va se déplacer de caractère en caractère et l'écrire (ou le lire). Donc lorsqu'on lit un fichier entier, le curseur se retrouve à la fin. Si on ne lit que la moitié, le curseur sera à la moitié.

Manipulation d’un fichier texte (Voir: VBNET-EX19-FICHIER-TEXTE) Notions de curseurs de fichier

Manipulation d’un fichier texte (Voir: VBNET-EX19-FICHIER-TEXTE) Notions de curseurs de fichier Lors d’une lecture complète du fichier, le curseur va se retrouver à la fin, lors d'une écriture sans bouger au préalable le curseur, l'écriture s'effectuera au début. Si le curseur est déjà à la fin et qu'on demande une lecture, il n'y aura rien à lire. La propriété Position permet de spécifier l'index de ce curseur. Dans l’exemple la position est fixée au début à chaque fois (0). Attention, si l'écriture reprend au début, le curseur ne s'occupe pas de ce qu'il y a avant, lorsqu'il va rencontrer un caractère déjà écrit dans le fichier il va l’écraser.

Manipulation d’un fichier texte (Voir: VBNET-EX19-FICHIER-TEXTE) Lecture: Sub BLireEntree_Click() Vérifier la possibilité de lecture. Création d’un tableau de Byte (comme l'écriture : 1025 emplacements). Le curseur est mis à la position 0 (début du fichier). Lecture de 1024 bytes (si le curseur rencontre la fin du fichier, la lecture s'arrête), et on place ce qui a été lu dans le tableau de Byte déclaré avant. Puis le For Each  parcourt toutes les cases de ce tableau de Byte. Une conversion Numerique => Caractère (soit Byte => ASCII grâce à la fonction Chr()), sinon que des chiffres seraient affichés (code ascii) Le texte lu est copié dans le textbox (grâce à += on ajoute les caractères à la suite)

Manipulation d’un fichier binaire (Voir: VBNET-EX20-FICHIER-BINAIRE) Ecriture: Sub Button2_Click() Création d’un objet BinaryWriter Écriture de chaque objet single (temperatures(i)) dans le fichier FichierEX-20.bin

Manipulation d’un fichier binaire (Voir: VBNET-EX20-FICHIER-BINAIRE) Lecture: Sub Button3_Click() Création d’un objet BinaryReader Lecture de chaque objet single dans le fichier FichierEX-20.bin et affichage dans le textBoxLire La fin de fichier est détecté avec la condition: fs.Position < fs.Length