File, classe (System.IO)

Bibliothèque de classes .NET Framework 
File, classe 

Fournit des méthodes statiques pour créer, copier, supprimer, déplacer et ouvrir des fichiers et facilite la création d'objets FileStream.

Espace de noms : System.IO
Assembly : mscorlib (dans mscorlib.dll)

SyntaxeSyntaxe


Visual Basic (Déclaration)
<ComVisibleAttribute(True)> _
Public NotInheritable Class File


Visual Basic (Utilisation)
Il est possible d'accéder aux membres d'une classe statique directement sans une instance de la classe.


C#
[ComVisibleAttribute(true)] 
public static class File


C++
[ComVisibleAttribute(true)] 
public ref class File abstract sealed


J#
/** @attribute ComVisibleAttribute(true) */ 
public final class File


JScript
ComVisibleAttribute(true) 
public final class File
NotesNotes

Utilisez la classe File pour les opérations courantes telles que la copie, le déplacement, l'attribution de nouveau nom, la création, l'ouverture, la suppression et l'ajout de fichiers. Vous pouvez également utiliser la classe File pour obtenir et définir des attributs de fichier ou des informations de DateTime relatives à la création, à l'accès et à l'écriture d'un fichier.

La plupart des méthodes File 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 File spécifiques tels que OpenText, CreateText ou Create.

Compte tenu que toutes les méthodes File sont statiques, il peut être plus efficace d'utiliser une méthode File plutôt qu'une méthode d'instance FileInfo correspondante si vous voulez exécuter une seule action. Toutes les méthodes File nécessitent le chemin d'accès au fichier que vous manipulez.

Les méthodes statiques de la classe File effectuent des contrôles de sécurité sur toutes les méthodes. Si vous souhaitez réutiliser un objet plusieurs fois, l'utilisation de la méthode d'instance correspondante de FileInfo peut être préférable, parce que la vérification de la sécurité n'est pas toujours nécessaire.

Par défaut, tous les utilisateurs ont l'autorisation d'accès complet en lecture/écriture aux nouveaux fichiers.

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

 

Énumération

Description

FileAccess

Spécifie l'accès en lecture et en é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 préservé ou substitué et si les demandes de création d'un fichier existant provoquent une exception.

RemarqueRemarque

Dans les membres qui acceptent un chemin d'accès en tant qu'une chaîne d'entrée, ce chemin d'accès doit être correctement construit ; sinon, une exception est levée. Par exemple, si un chemin d'accès est qualifié 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 façon similaire, un chemin d'accès ou une combinaison de chemins d'accès ne peut pas être qualifié complet deux fois. Par exemple, "c:\temp c:\windows" lève une exception dans la plupart des cas. Assurez-vous que vos chemins d'accès sont correctement construits lorsque vous utilisez des 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 d'accès spécifié peut également faire référence à un chemin d'accès relatif ou à un chemin d'accès de convention d'affectation de noms (UNC) pour un nom de serveur et de partage. Par exemple, les chemins d'accès suivants sont tous valides :

  • "c:\\MonRépertoire\\MonFichier.txt" en C# ou "c:\MonRépertoire\MonFichier.txt" en Visual Basic.

  • "c:\\MonRépertoire" en C# ou "c:\MonRépertoire" en Visual Basic.

  • "MonRépertoire\\MonSousRépertoire" en C# ou "MonRépertoire\MonSousRépertoire" en Visual Basic.

  • "\\\\MonServeur\\MonPartage" en C# ou "\\MonServeur\MonPartage" en Visual Basic.

Pour obtenir un exemple illustrant l'utilisation de cette classe, consultez la section Exemple. Le tableau suivant répertorie des exemples d'autres tâches d'E/S courantes ou apparentées.

 

Pour effectuer cette opération...

Consultez l'exemple qui se trouve dans cette rubrique...

Créer un fichier texte.

Comment : écrire du texte dans un fichier

Écrire dans un fichier texte.

Comment : écrire du texte dans un fichier

Lire à partir d'un fichier texte.

Comment : lire du texte dans un fichier

Ajouter du texte dans un fichier.

Comment : ouvrir un fichier journal et y ajouter des éléments

File.AppendText

FileInfo.AppendText

Renommer ou déplacer un fichier.

File.Move

FileInfo.MoveTo

Supprimer un fichier.

File.Delete

FileInfo.Delete

Copier un fichier.

File.Copy

FileInfo.CopyTo

Obtenir la taille d'un fichier.

FileInfo.Length

Obtenir les attributs d'un fichier.

File.GetAttributes

Définir les attributs d'un fichier.

File.SetAttributes

Déterminer si un fichier existe.

File.Exists

Lire à partir d'un fichier binaire.

Comment : lire et écrire dans un fichier de données créé récemment

Écrire dans un fichier binaire.

Comment : lire et écrire dans un fichier de données créé récemment

Récupérer une extension de fichier.

Path.GetExtension

Récupérer le chemin d'accès qualifié complet d'un fichier.

Path.GetFullPath

Récupérer le nom de fichier et l'extension d'un chemin d'accès.

Path.GetFileName

Modifier l'extension d'un fichier.

Path.ChangeExtension

ExempleExemple

L'exemple suivant illustre certains membres principaux de la classe File.



Visual Basic
Imports System
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.
            Dim sw As StreamWriter = File.CreateText(path)
            sw.WriteLine("Hello")
            sw.WriteLine("And")
            sw.WriteLine("Welcome")
            sw.Flush()
            sw.Close()
        End If

        Try
            ' Open the file to read from.
            Dim sr As StreamReader = File.OpenText(path)
            Do While sr.Peek() >= 0
                Console.WriteLine(sr.ReadLine())
            Loop
            sr.Close()
            Dim path2 As String = path + "temp"

            ' Ensure that the target does not exist.
            File.Delete(path2)

            ' Copy the file.
            File.Copy(path, path2)
            Console.WriteLine("{0} was copied to {1}.", path, path2)

            ' Delete the newly created file.
            File.Delete(path2)
            Console.WriteLine("{0} was successfully deleted.", path2)

        Catch e As Exception
            Console.WriteLine("The process failed: {0}", e.ToString())
        End Try
    End Sub
End Class


C#
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);
            }
        }

        try 
        {
            string path2 = path + "temp";
            // Ensure that the target does not exist.
            File.Delete(path2);

            // Copy the file.
            File.Copy(path, path2);
            Console.WriteLine("{0} was copied to {1}.", path, path2);

            // Delete the newly created file.
            File.Delete(path2);
            Console.WriteLine("{0} was successfully deleted.", path2);
        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}


C++
using namespace System;
using namespace System::IO;
int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   if (  !File::Exists( path ) )
   {
      
      // Create a file to write to.
      StreamWriter^ sw = File::CreateText( path );
      try
      {
         sw->WriteLine( "Hello" );
         sw->WriteLine( "And" );
         sw->WriteLine( "Welcome" );
      }
      finally
      {
         if ( sw )
                  delete (IDisposable^)(sw);
      }
   }

   // Open the file to read from.
   StreamReader^ sr = File::OpenText( path );
   try
   {
      String^ s = "";
      while ( s = sr->ReadLine() )
      {
         Console::WriteLine( s );
      }
   }
   finally
   {
      if ( sr )
            delete (IDisposable^)(sr);
   }

   try
   {
      String^ path2 = String::Concat( path, "temp" );
      
      // Ensure that the target does not exist.
      File::Delete( path2 );
      
      // Copy the file.
      File::Copy( path, path2 );
      Console::WriteLine( "{0} was copied to {1}.", path, path2 );
      
      // Delete the newly created file.
      File::Delete( path2 );
      Console::WriteLine( "{0} was successfully deleted.", path2 );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "The process failed: {0}", e );
   }
}


J#
import System.*;
import System.IO.*;

class Test
{
    public static void main(String[] args)
    {
        String path = "c:\\temp\\MyTest.txt";

        if (!(File.Exists(path))) {
            // Create a file to write to.
            StreamWriter sw = File.CreateText(path);

            try {
                sw.WriteLine("Hello");
                sw.WriteLine("And");
                sw.WriteLine("Welcome");
            }
            finally {
                sw.Dispose();
            }
        }

        // Open the file to read from.
        StreamReader sr = File.OpenText(path);

        try {
            String s = "";

            while ((s = sr.ReadLine()) != null) {
                Console.WriteLine(s);
            }
        }
        finally {
            sr.Dispose();
        }
        try {
            String path2 = path + "temp";

            // Ensure that the target does not exist.
            File.Delete(path2);

            // Copy the file.
            File.Copy(path, path2);
            Console.WriteLine("{0} was copied to {1}.", path, path2);

            // Delete the newly created file.
            File.Delete(path2);
            Console.WriteLine("{0} was successfully deleted.", path2);
        }
        catch (System.Exception e) {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    } //main
} //Test
Hiérarchie d'héritageHiérarchie d'héritage
System.Object
  System.IO.File
Sécurité des threadsSécurité des threads
Les membres statiques publics (Shared en Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Plates-formesPlates-formes

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

Informations de versionInformations de version

.NET Framework

Prise en charge dans : 2.0, 1.1, 1.0

.NET Compact Framework

Prise en charge dans : 2.0, 1.0
Voir aussiVoir aussi

Ces informations proviennent du site de http://msdn2.microsoft.com
Source de cette page : http://msdn2.microsoft.com/fr-fr/library/system.io.file.aspx

Réseaux sociaux

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.

 

Nuage de mots clés

7 mots clés dont 0 définis manuellement (plus d'information...).

Avertissement

Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.

 

Astuce pour imprimer les couleurs des cellules de tableaux : http://www.gaudry.be/ast-rf-450.html
Aucun commentaire pour cette page

© Ce document issu de l′infobrol est enregistré sous le certificat Cyber PrInterDeposit Digital Numbertection. Enregistrement IDDN n° 5329-4820
Document créé le 30/10/06 01:30, dernière modification le Vendredi 17 Juin 2011, 12:11
Source du document imprimé : http://www.gaudry.be/dotnet-rf-system.io.file.html Document affiché 1 fois ce mois de Juin.
St.Gaudry©07.01.02
Outils (masquer)
||
Recherche (afficher)
Recherche :

Utilisateur (masquer)
Apparence (afficher)
Stats (afficher)
15832 documents
452 astuces.
549 niouzes.
3099 definitions.
447 membres.
8115 messages.

Document genere en :
0,38 seconde

Mises à jour :
Mises à jour du site
Citation (masquer)
Un optimiste est un monsieur qui croit qu'une dame a terminé sa conversation téléphonique parce qu'elle dit au revoir.

Marcel Achard
 
l'infobrol
Nous sommes le Vendredi 01 Juin 2012, 04:40, toutes les heures sont au format GMT+1.00 Heure, heure d'été (+1)