Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Les classes de l'espace de noms System.IO sont utilisées pour travailler avec des lecteurs, des fichiers et des répertoires.
L’espace de noms System.IO contient les classes File et Directory, qui assurent les fonctionnalités du .NET Framework pour manipuler les fichiers et les répertoires. Étant donné que les méthodes de ces objets sont des membres statiques ou partagés, vous pouvez les utiliser directement sans créer d’instance de la classe en premier. Les classes FileInfo et DirectoryInfo associées seront familières aux utilisateurs de la fonctionnalité My. Pour utiliser ces classes, vous devez qualifier complètement les noms ou importer les espaces de noms appropriés en incluant les instructions Imports au début du code affecté. Pour plus d’informations, consultez Instruction Imports (espace de noms et type .NET).
Remarque
D’autres rubriques de cette section utilisent l’objet My.Computer.FileSystem au lieu de System.IO classes pour travailler avec des lecteurs, des fichiers et des répertoires. L’objet My.Computer.FileSystem est principalement destiné à être utilisé dans les programmes Visual Basic.
System.IO les classes sont destinées à être utilisées par n’importe quel langage qui prend en charge le .NET Framework, y compris Visual Basic.
Définition d’un flux
Le .NET Framework utilise des flux pour prendre en charge la lecture et l’écriture dans des fichiers. Vous pouvez considérer un flux comme un ensemble unidimensionnel de données contiguës, qui a un début et une fin, et où le curseur indique la position actuelle dans le flux.
Opérations de flux
Les données contenues dans le flux peuvent provenir de la mémoire, d’un fichier ou d’un socket TCP/IP. Les flux ont des opérations fondamentales qui peuvent être appliquées à eux :
Lecture. Vous pouvez lire à partir d’un flux, transférer des données du flux dans une structure de données, telle qu’une chaîne ou un tableau d’octets.
Écriture. Vous pouvez écrire dans un flux, en transférant des données d’une source de données dans le flux.
Recherche. Vous pouvez interroger et modifier votre position dans le flux.
Pour plus d’informations, consultez Composition de flux.
Types de flux
Dans .NET Framework, un flux est représenté par la Stream classe, qui forme la classe abstraite pour tous les autres flux. Vous ne pouvez pas créer directement une instance de la Stream classe, mais vous devez utiliser l’une des classes qu’elle implémente.
Il existe de nombreux types de flux, mais à des fins d’utilisation des entrées/sorties de fichier (E/S), les types les plus importants sont la FileStream classe, qui fournit un moyen de lire et d’écrire dans des fichiers, et la IsolatedStorageFileStream classe, qui permet de créer des fichiers et des répertoires dans un stockage isolé. Les autres flux qui peuvent être utilisés lors de l’utilisation des E/S de fichier sont les suivants :
Le tableau suivant répertorie les tâches couramment accomplies avec un flux :
| À | Consultez |
|---|---|
| Lire et écrire dans un fichier de données | Guide pratique pour lire et écrire dans un fichier de données nouvellement créé |
| Lire du texte à partir d’un fichier | Guide pratique pour lire du texte à partir d’un fichier |
| Écrire du texte dans un fichier | Guide pratique pour écrire du texte dans un fichier |
| Lire des caractères à partir d’une chaîne | Guide pratique pour lire des caractères à partir d’une chaîne |
| Écrire des caractères dans une chaîne | Guide pratique pour écrire des caractères dans une chaîne |
| Chiffrer les données | Chiffrement des données |
| Déchiffrer les données | Déchiffrement des données |
Accès aux fichiers et attributs
Vous pouvez contrôler la façon dont les fichiers sont créés, ouverts et partagés avec les FileAccessénumérations FileMode, FileShare qui contiennent les indicateurs utilisés par les constructeurs de la FileStream classe. Par exemple, lorsque vous ouvrez ou créez un nouveau FileStreamfichier, l’énumération FileMode vous permet de spécifier si le fichier est ouvert pour l’ajout, si un nouveau fichier est créé si le fichier spécifié n’existe pas, si le fichier est remplacé, etc.
L’énumération FileAttributes active la collecte d’informations spécifiques à un fichier. L’énumération FileAttributes retourne les attributs stockés du fichier, comme s’il est compressé, chiffré, masqué, en lecture seule, une archive, un répertoire, un fichier système ou un fichier temporaire.
Le tableau suivant répertorie les tâches impliquant l’accès aux fichiers et les attributs de fichier :
| À | Consultez |
|---|---|
| Ouvrir et ajouter du texte à un fichier journal | Guide pratique pour ouvrir et ajouter à un fichier journal |
| Déterminer les attributs d’un fichier | FileAttributes |
Autorisations de fichier
Le contrôle de l’accès aux fichiers et répertoires peut être effectué avec la FileIOPermission classe. Cela peut être particulièrement important pour les développeurs travaillant avec Web Forms, qui s’exécutent par défaut dans le contexte d’un compte d’utilisateur local spécial nommé ASPNET, qui est créé dans le cadre des installations ASP.NET et .NET Framework. Lorsqu’une telle application demande l’accès à une ressource, le compte d’utilisateur ASPNET dispose d’autorisations limitées, ce qui peut empêcher l’utilisateur d’effectuer des actions telles que l’écriture dans un fichier à partir d’une application web. Pour plus d’informations, consultez FileIOPermission.
Stockage de fichiers isolé
Le stockage isolé est une tentative de résolution des problèmes créés lors de l’utilisation de fichiers où l’utilisateur ou le code peut ne pas avoir les autorisations nécessaires. Le stockage isolé affecte à chaque utilisateur un compartiment de données, qui peut contenir un ou plusieurs espaces de stockage. Les magasins peuvent être isolés les uns des autres par utilisateur et par assemblage. Seul l’utilisateur et l’assembly qui ont créé un magasin y ont accès. Un magasin agit comme un système de fichiers virtuel complet. Dans un magasin, vous pouvez créer et manipuler des répertoires et des fichiers.
Le tableau suivant répertorie les tâches couramment associées au stockage de fichiers isolé.
| À | Consultez |
|---|---|
| Créer un magasin isolé | Comment obtenir des espaces pour le stockage isolé |
| Énumérer les magasins isolés | Guide pratique pour énumérer les magasins pour le stockage isolé |
| Supprimer un magasin isolé | Procédure : supprimer des magasins dans le stockage isolé |
| Créer un fichier ou un répertoire dans un stockage isolé | Guide pratique pour créer des fichiers et des répertoires dans un stockage isolé |
| Rechercher un fichier dans un stockage isolé | Guide pratique pour rechercher des fichiers et des répertoires existants dans le stockage isolé |
| Lecture ou écriture dans un fichier dans un stockage isolé | Guide pratique pour lire et écrire dans des fichiers dans le stockage isolé |
| Supprimer un fichier ou un répertoire dans un stockage isolé | Procédure : supprimer des fichiers et des répertoires dans un stockage isolé |
Événements de fichier
Le FileSystemWatcher composant vous permet de surveiller les modifications apportées aux fichiers et répertoires sur votre système ou sur n’importe quel ordinateur auquel vous avez accès réseau. Par exemple, si un fichier est modifié, vous pouvez envoyer à un utilisateur une alerte indiquant que la modification a eu lieu. Lorsque des modifications se produisent, un ou plusieurs événements sont déclenchés, stockés dans une mémoire tampon et remis au FileSystemWatcher composant pour traitement.