File Classe

Définition

Fournit des méthodes statiques pour la création, la copie, la suppression, le déplacement et l’ouverture d’un fichier unique et facilite la création d’objets FileStream .

public ref class File abstract sealed
public ref class File sealed
public static class File
public sealed class File
[System.Runtime.InteropServices.ComVisible(true)]
public static class File
type File = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type File = class
Public Class File
Public NotInheritable Class File
Héritage
File
Attributs

Exemples

L’exemple suivant montre comment utiliser la File classe pour vérifier si un fichier existe et, selon le résultat, créez un fichier et écrivez-le, ou ouvrez le fichier existant et lisez-le. Avant d’exécuter le code, créez un c:\temp dossier.

using System;
using System.IO;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";
        if (!File.Exists(path))
        {
            // Create a file to write to.
            using (StreamWriter sw = File.CreateText(path))
            {
                sw.WriteLine("Hello");
                sw.WriteLine("And");
                sw.WriteLine("Welcome");
            }
        }

        // Open the file to read from.
        using (StreamReader sr = File.OpenText(path))
        {
            string s;
            while ((s = sr.ReadLine()) != null)
            {
                Console.WriteLine(s);
            }
        }
    }
}
open System.IO

let path = @"c:\temp\MyTest.txt"

if File.Exists path |> not then
    // Create a file to write to.
    use sw = File.CreateText path
    sw.WriteLine "Hello"
    sw.WriteLine "And"
    sw.WriteLine "Welcome"

// Open the file to read from.
do
    use sr = File.OpenText path
    let mutable s = sr.ReadLine()

    while isNull s |> not do
        printfn $"{s}"
        s <- sr.ReadLine()
Imports System.IO

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        If File.Exists(path) = False Then
            ' Create a file to write to.
            Using sw As StreamWriter = File.CreateText(path)
                sw.WriteLine("Hello")
                sw.WriteLine("And")
                sw.WriteLine("Welcome")
           End Using
        End If

        ' Open the file to read from.
        Using sr As StreamReader = File.OpenText(path)
            Do While sr.Peek() >= 0
                Console.WriteLine(sr.ReadLine())
            Loop
        End Using
    End Sub
End Class

Remarques

Utilisez la classe pour les opérations classiques telles que la copie, le File déplacement, le changement de nom, la création, l’ouverture, la suppression et l’ajout à un seul fichier à la fois. Vous pouvez également utiliser la classe pour obtenir et définir des attributs de fichier ou DateTime des informations relatives à la création, à l’accès File et à l’écriture d’un fichier. Si vous souhaitez effectuer des opérations sur plusieurs fichiers, consultez Directory.GetFiles ou DirectoryInfo.GetFiles.

File De nombreuses méthodes retournent d’autres types d’E/S lorsque vous créez ou ouvrez des fichiers. Vous pouvez utiliser ces autres types pour manipuler davantage un fichier. Pour plus d’informations, consultez des membres spécifiques File tels que OpenText, CreateTextou Create.

Étant donné que toutes les File méthodes sont statiques, si vous souhaitez effectuer une seule action, il peut être plus efficace d’utiliser une File méthode qu’une méthode d’instance correspondante FileInfo . Toutes les File méthodes nécessitent le chemin d’accès au fichier que vous manipulez.

Les méthodes statiques de la File classe effectuent des vérifications de sécurité sur toutes les méthodes. Si vous envisagez de réutiliser un objet plusieurs fois, envisagez d’utiliser la méthode d’instance correspondante à FileInfo la place, car la vérification de sécurité ne sera pas toujours nécessaire.

Par défaut, l’accès en lecture/écriture complet aux nouveaux fichiers est accordé à tous les utilisateurs.

Le tableau suivant décrit les énumérations utilisées pour personnaliser le comportement de différentes File méthodes.

Enumeration Description
FileAccess Spécifie l’accès en lecture et écriture à un fichier.
FileShare Spécifie le niveau d’accès autorisé pour un fichier déjà utilisé.
FileMode Spécifie si le contenu d’un fichier existant est conservé ou remplacé, et si les demandes de création d’un fichier existant provoquent une exception.

Note

Dans les membres qui acceptent un chemin d’accès en tant que chaîne d’entrée, ce chemin doit être bien formé ou une exception est levée. Par exemple, si un chemin d’accès est complet, mais commence par un espace, le chemin n’est pas rogné dans les méthodes de la classe. Par conséquent, le chemin d’accès est incorrect et une exception est levée. De même, un chemin d’accès ou une combinaison de chemins ne peut pas être qualifié deux fois. Par exemple, « c :\temp c :\windows » déclenche également une exception dans la plupart des cas. Vérifiez que vos chemins sont bien formés lors de l’utilisation de méthodes qui acceptent une chaîne de chemin d’accès.

Dans les membres qui acceptent un chemin d’accès, le chemin d’accès peut faire référence à un fichier ou simplement à un répertoire. Le chemin spécifié peut également faire référence à un chemin relatif ou à un chemin d’accès UNC (Universal Naming Convention) pour un serveur et un nom de partage. Par exemple, tous les chemins suivants sont acceptables :

  • "c:\\\MyDir\\\MyFile.txt" en C#, ou "c:\MyDir\MyFile.txt" dans Visual Basic.
  • "c:\\\MyDir" en C#, ou "c:\MyDir" dans Visual Basic.
  • "MyDir\\\MySubdir" en C#, ou "MyDir\MySubDir" dans Visual Basic.
  • "\\\\\\\MyServer\\\MyShare" en C#, ou "\\\MyServer\MyShare" dans Visual Basic.

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.

Méthodes

Nom Description
AppendAllLines(String, IEnumerable<String>, Encoding)

Ajoute des lignes à un fichier à l’aide d’un encodage spécifié, puis ferme le fichier. Si le fichier spécifié n’existe pas, cette méthode crée un fichier, écrit les lignes spécifiées dans le fichier, puis ferme le fichier.

AppendAllLines(String, IEnumerable<String>)

Ajoute des lignes à un fichier, puis ferme le fichier. Si le fichier spécifié n’existe pas, cette méthode crée un fichier, écrit les lignes spécifiées dans le fichier, puis ferme le fichier.

AppendAllLinesAsync(String, IEnumerable<String>, CancellationToken)

Ajoute de façon asynchrone des lignes à un fichier, puis ferme le fichier. Si le fichier spécifié n’existe pas, cette méthode crée un fichier, écrit les lignes spécifiées dans le fichier, puis ferme le fichier.

AppendAllLinesAsync(String, IEnumerable<String>, Encoding, CancellationToken)

Ajoute de façon asynchrone des lignes à un fichier à l’aide d’un encodage spécifié, puis ferme le fichier. Si le fichier spécifié n’existe pas, cette méthode crée un fichier, écrit les lignes spécifiées dans le fichier, puis ferme le fichier.

AppendAllText(String, String, Encoding)

Ajoute la chaîne spécifiée au fichier à l’aide de l’encodage spécifié, en créant le fichier s’il n’existe pas déjà.

AppendAllText(String, String)

Ouvre un fichier, ajoute la chaîne spécifiée au fichier, puis ferme le fichier. Si le fichier n’existe pas, cette méthode crée un fichier, écrit la chaîne spécifiée dans le fichier, puis ferme le fichier.

AppendAllTextAsync(String, String, CancellationToken)

Ouvre de façon asynchrone un fichier ou crée un fichier s’il n’existe pas déjà, ajoute la chaîne spécifiée au fichier, puis ferme le fichier.

AppendAllTextAsync(String, String, Encoding, CancellationToken)

Ouvre de façon asynchrone un fichier ou crée le fichier s’il n’existe pas déjà, ajoute la chaîne spécifiée au fichier à l’aide de l’encodage spécifié, puis ferme le fichier.

AppendText(String)

Crée un StreamWriter fichier qui ajoute du texte encodé UTF-8 à un fichier existant ou à un nouveau fichier si le fichier spécifié n’existe pas.

Copy(String, String, Boolean)

Copie un fichier existant dans un nouveau fichier. Le remplacement d’un fichier du même nom est autorisé.

Copy(String, String)

Copie un fichier existant dans un nouveau fichier. Le remplacement d’un fichier du même nom n’est pas autorisé.

Create(String, Int32, FileOptions, FileSecurity)

Crée ou remplace un fichier dans le chemin d’accès spécifié, en spécifiant une taille de mémoire tampon, des options qui décrivent comment créer ou remplacer le fichier et une valeur qui détermine le contrôle d’accès et la sécurité d’audit du fichier.

Create(String, Int32, FileOptions)

Crée ou remplace un fichier dans le chemin d’accès spécifié, en spécifiant une taille de mémoire tampon et des options qui décrivent comment créer ou remplacer le fichier.

Create(String, Int32)

Crée ou tronque et remplace un fichier dans le chemin d’accès spécifié, en spécifiant une taille de mémoire tampon.

Create(String)

Crée, ou tronque et remplace un fichier dans le chemin d’accès spécifié.

CreateText(String)

Crée ou ouvre un fichier pour écrire du texte encodé UTF-8. Si le fichier existe déjà, son contenu est remplacé.

Decrypt(String)

Déchiffre un fichier chiffré par le compte actuel à l’aide de la Encrypt(String) méthode.

Delete(String)

Supprime le fichier spécifié.

Encrypt(String)

Chiffre un fichier afin que seul le compte utilisé pour chiffrer le fichier puisse le déchiffrer.

Exists(String)

Détermine si le fichier spécifié existe.

GetAccessControl(String, AccessControlSections)

Obtient un FileSecurity objet qui encapsule le type spécifié d’entrées de liste de contrôle d’accès (ACL) pour un fichier particulier.

GetAccessControl(String)

Obtient un FileSecurity objet qui encapsule les entrées de liste de contrôle d’accès (ACL) pour un fichier spécifié.

GetAttributes(String)

Obtient le FileAttributes fichier sur le chemin d’accès.

GetCreationTime(String)

Retourne la date et l’heure de création du fichier ou du répertoire spécifiés.

GetCreationTimeUtc(String)

Retourne la date et l’heure de création, en temps universel coordonné (UTC), du fichier ou du répertoire spécifié.

GetLastAccessTime(String)

Retourne la date et l’heure auxquelles le fichier ou répertoire spécifié a été consulté pour la dernière fois.

GetLastAccessTimeUtc(String)

Retourne la date et l’heure, en temps universel coordonné (UTC), que le fichier ou répertoire spécifié a été consulté pour la dernière fois.

GetLastWriteTime(String)

Retourne la date et l’heure dans laquelle le fichier ou répertoire spécifié a été écrit pour la dernière fois.

GetLastWriteTimeUtc(String)

Retourne la date et l’heure, en temps universel coordonné (UTC), dans laquelle le fichier ou répertoire spécifié a été écrit pour la dernière fois.

Move(String, String)

Déplace un fichier spécifié vers un nouvel emplacement, en fournissant l’option permettant de spécifier un nouveau nom de fichier.

Open(String, FileMode, FileAccess, FileShare)

Ouvre un FileStream chemin d’accès spécifié, avec le mode de lecture, d’écriture ou d’accès en lecture/écriture et l’option de partage spécifiée.

Open(String, FileMode, FileAccess)

Ouvre un FileStream chemin d’accès spécifié, avec le mode spécifié et l’accès sans partage.

Open(String, FileMode)

Ouvre un FileStream chemin d’accès spécifié avec un accès en lecture/écriture sans partage.

OpenRead(String)

Ouvre un fichier existant pour la lecture.

OpenText(String)

Ouvre un fichier texte encodé UTF-8 existant pour la lecture.

OpenWrite(String)

Ouvre un fichier existant ou crée un fichier pour l’écriture.

ReadAllBytes(String)

Ouvre un fichier binaire, lit le contenu du fichier dans un tableau d’octets, puis ferme le fichier.

ReadAllBytesAsync(String, CancellationToken)

Ouvre de façon asynchrone un fichier binaire, lit le contenu du fichier dans un tableau d’octets, puis ferme le fichier.

ReadAllLines(String, Encoding)

Ouvre un fichier, lit toutes les lignes du fichier avec l’encodage spécifié, puis ferme le fichier.

ReadAllLines(String)

Ouvre un fichier texte, lit toutes les lignes du fichier, puis ferme le fichier.

ReadAllLinesAsync(String, CancellationToken)

Ouvre de façon asynchrone un fichier texte, lit toutes les lignes du fichier, puis ferme le fichier.

ReadAllLinesAsync(String, Encoding, CancellationToken)

Ouvre de façon asynchrone un fichier texte, lit toutes les lignes du fichier avec l’encodage spécifié, puis ferme le fichier.

ReadAllText(String, Encoding)

Ouvre un fichier, lit tout le texte du fichier avec l’encodage spécifié, puis ferme le fichier.

ReadAllText(String)

Ouvre un fichier texte, lit tout le texte du fichier, puis ferme le fichier.

ReadAllTextAsync(String, CancellationToken)

Ouvre de façon asynchrone un fichier texte, lit tout le texte du fichier, puis ferme le fichier.

ReadAllTextAsync(String, Encoding, CancellationToken)

Ouvre de façon asynchrone un fichier texte, lit tout le texte du fichier avec l’encodage spécifié, puis ferme le fichier.

ReadLines(String, Encoding)

Lit les lignes d’un fichier qui a un encodage spécifié.

ReadLines(String)

Lit les lignes d’un fichier.

Replace(String, String, String, Boolean)

Remplace le contenu d’un fichier spécifié par le contenu d’un autre fichier, la suppression du fichier d’origine et la création d’une sauvegarde du fichier remplacé, et ignore éventuellement les erreurs de fusion.

Replace(String, String, String)

Remplace le contenu d’un fichier spécifié par le contenu d’un autre fichier, la suppression du fichier d’origine et la création d’une sauvegarde du fichier remplacé.

SetAccessControl(String, FileSecurity)

Applique les entrées de liste de contrôle d’accès (ACL) décrites par un FileSecurity objet au fichier spécifié.

SetAttributes(String, FileAttributes)

Définit le fichier spécifié FileAttributes sur le chemin d’accès spécifié.

SetCreationTime(String, DateTime)

Définit la date et l’heure de création du fichier.

SetCreationTimeUtc(String, DateTime)

Définit la date et l’heure, en temps universel coordonné (UTC), que le fichier a été créé.

SetLastAccessTime(String, DateTime)

Définit la date et l’heure auxquelles le fichier spécifié a été consulté pour la dernière fois.

SetLastAccessTimeUtc(String, DateTime)

Définit la date et l’heure, en temps universel coordonné (UTC), auquel le fichier spécifié a été accédé pour la dernière fois.

SetLastWriteTime(String, DateTime)

Définit la date et l’heure auxquelles le fichier spécifié a été écrit pour la dernière fois.

SetLastWriteTimeUtc(String, DateTime)

Définit la date et l’heure, en temps universel coordonné (UTC), dans laquelle le fichier spécifié a été écrit pour la dernière fois.

WriteAllBytes(String, Byte[])

Crée un fichier, écrit le tableau d’octets spécifié dans le fichier, puis ferme le fichier. Si le fichier cible existe déjà, il est tronqué et remplacé.

WriteAllBytesAsync(String, Byte[], CancellationToken)

Crée de façon asynchrone un fichier, écrit le tableau d’octets spécifié dans le fichier, puis ferme le fichier. Si le fichier cible existe déjà, il est tronqué et remplacé.

WriteAllLines(String, IEnumerable<String>, Encoding)

Crée un fichier à l’aide de l’encodage spécifié, écrit une collection de chaînes dans le fichier, puis ferme le fichier.

WriteAllLines(String, IEnumerable<String>)

Crée un fichier, écrit une collection de chaînes dans le fichier, puis ferme le fichier.

WriteAllLines(String, String[], Encoding)

Crée un fichier, écrit le tableau de chaînes spécifié dans le fichier à l’aide de l’encodage spécifié, puis ferme le fichier.

WriteAllLines(String, String[])

Crée un fichier, écrit le tableau de chaînes spécifié dans le fichier, puis ferme le fichier.

WriteAllLinesAsync(String, IEnumerable<String>, CancellationToken)

Crée de façon asynchrone un fichier, écrit les lignes spécifiées dans le fichier, puis ferme le fichier.

WriteAllLinesAsync(String, IEnumerable<String>, Encoding, CancellationToken)

Crée de façon asynchrone un fichier, écrit les lignes spécifiées dans le fichier à l’aide de l’encodage spécifié, puis ferme le fichier.

WriteAllText(String, String, Encoding)

Crée un fichier, écrit la chaîne spécifiée dans le fichier à l’aide de l’encodage spécifié, puis ferme le fichier. Si le fichier cible existe déjà, il est tronqué et remplacé.

WriteAllText(String, String)

Crée un fichier, écrit la chaîne spécifiée dans le fichier, puis ferme le fichier. Si le fichier cible existe déjà, il est tronqué et remplacé.

WriteAllTextAsync(String, String, CancellationToken)

Crée de façon asynchrone un fichier, écrit la chaîne spécifiée dans le fichier, puis ferme le fichier. Si le fichier cible existe déjà, il est tronqué et remplacé.

WriteAllTextAsync(String, String, Encoding, CancellationToken)

Crée de façon asynchrone un fichier, écrit la chaîne spécifiée dans le fichier à l’aide de l’encodage spécifié, puis ferme le fichier. Si le fichier cible existe déjà, il est tronqué et remplacé.

S’applique à

Voir aussi