FileInfo FileInfo FileInfo FileInfo Class

Définition

Fournit des propriétés et des méthodes d'instance pour créer, copier, supprimer, déplacer et ouvrir des fichiers, et facilite la création d'objets FileStream.Provides properties and instance methods for the creation, copying, deletion, moving, and opening of files, and aids in the creation of FileStream objects. Cette classe ne peut pas être héritée.This class cannot be inherited.

public ref class FileInfo sealed : System::IO::FileSystemInfo
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public sealed class FileInfo : System.IO.FileSystemInfo
type FileInfo = class
    inherit FileSystemInfo
Public NotInheritable Class FileInfo
Inherits FileSystemInfo
Héritage
Attributs

Exemples

L’exemple suivant illustre certains membres principaux de la FileInfo classe.The following example demonstrates some of the main members of the FileInfo class.

Lorsque les propriétés sont extraites en premier, FileInfo appelle le Refresh (méthode) et les caches des informations sur le fichier.When the properties are first retrieved, FileInfo calls the Refresh method and caches information about the file. Lors des appels ultérieurs, vous devez appeler Refresh pour obtenir la dernière copie des informations.On subsequent calls, you must call Refresh to get the latest copy of the information.

using namespace System;
using namespace System::IO;

int main()
{
   String^ path = Path::GetTempFileName();
   FileInfo^ fi1 = gcnew FileInfo( path );
   //Create a file to write to.
   StreamWriter^ sw = fi1->CreateText();
   try
   {
	 sw->WriteLine( "Hello" );
	 sw->WriteLine( "And" );
	 sw->WriteLine( "Welcome" );
   }
   finally
   {
	 if ( sw )
		delete (IDisposable^)sw;
   }

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

   try
   {
      String^ path2 = Path::GetTempFileName();
      FileInfo^ fi2 = gcnew FileInfo( path2 );

      //Ensure that the target does not exist.
      fi2->Delete();

      //Copy the file.
      fi1->CopyTo( path2 );
      Console::WriteLine( "{0} was copied to {1}.", path, path2 );

      //Delete the newly created file.
      fi2->Delete();
      Console::WriteLine( "{0} was successfully deleted.", path2 );
   }
   catch ( Exception^ e )
   {
      Console::WriteLine( "The process failed: {0}", e );
   }
}
using System;
using System.IO;

class Test 
{
	
    public static void Main() 
    {
        string path = Path.GetTempFileName();
        FileInfo fi1 = new FileInfo(path);

        //Create a file to write to.
        using (StreamWriter sw = fi1.CreateText()) 
        {
            sw.WriteLine("Hello");
            sw.WriteLine("And");
            sw.WriteLine("Welcome");
        }	

        //Open the file to read from.
        using (StreamReader sr = fi1.OpenText()) 
        {
            string s = "";
            while ((s = sr.ReadLine()) != null) 
            {
                Console.WriteLine(s);
            }
        }

        try 
        {
            string path2 = Path.GetTempFileName();
            FileInfo fi2 = new FileInfo(path2);

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

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

            //Delete the newly created file.
            fi2.Delete();
            Console.WriteLine("{0} was successfully deleted.", path2);

        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}
Imports System
Imports System.IO

Public Class Test

    Public Shared Sub Main()
        Dim path1 As String = Path.GetTempFileName()
        Dim path2 As String = Path.GetTempFileName()
        Dim fi As FileInfo = New FileInfo(path1)

        'Create a file to write to.
        Dim sw As StreamWriter = fi.CreateText()

        sw.WriteLine("Hello")
        sw.WriteLine("And")
        sw.WriteLine("Welcome")
        sw.Flush()
        sw.Close()

        Try
            'Open the file to read from.
            Dim sr As StreamReader = fi.OpenText()

            Do While sr.Peek() >= 0
                Console.WriteLine(sr.ReadLine())
            Loop
            sr.Close()
            Dim fi2 As FileInfo = New FileInfo(path2)

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

            'Copy the file.
            fi.CopyTo(path2)
            Console.WriteLine("{0} was copied to {1}.", path1, path2)

            'Delete the newly created file.
            fi2.Delete()
            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

Cet exemple produit une sortie similaire à ce qui suit.This example produces output similar to the following.

Hello  
And  
Welcome  
C:\Users\userName\AppData\Local\Temp\tmp70AB.tmp was copied to C:\Users\userName\AppData\Local\Temp\tmp70CB.tmp.  
C:\Users\userName\AppData\Local\Temp\tmp70CB.tmp was successfully deleted.  

Remarques

Utilisez la FileInfo classe pour les opérations courantes telles que la copie, déplacer, renommer, création, ouverture, la suppression et ajout de fichiers.Use the FileInfo class for typical operations such as copying, moving, renaming, creating, opening, deleting, and appending to files.

Si vous effectuez plusieurs opérations sur le même fichier, il peut être plus efficace d’utiliser FileInfo des méthodes au lieu de méthodes statiques correspondantes de l’instance la File classe, parce qu’une vérification de sécurité n'est pas toujours nécessaire.If you are performing multiple operations on the same file, it can be more efficient to use FileInfo instance methods instead of the corresponding static methods of the File class, because a security check will not always be necessary.

Un grand nombre de la FileInfo méthodes retournent des autres types d’e/s lorsque vous créez ou ouvrez des fichiers.Many of the FileInfo methods return other I/O types when you create or open files. Vous pouvez utiliser ces autres types pour manipuler un fichier.You can use these other types to further manipulate a file. Pour plus d’informations, consultez spécifique FileInfo membres comme Open, OpenRead, OpenText, CreateText, ou Create.For more information, see specific FileInfo members such as Open, OpenRead, OpenText, CreateText, or Create.

Par défaut, accès complet en lecture/écriture aux nouveaux fichiers est accordé à tous les utilisateurs.By default, full read/write access to new files is granted to all users.

Le tableau suivant décrit les énumérations qui sont utilisées pour personnaliser le comportement de divers FileInfo méthodes.The following table describes the enumerations that are used to customize the behavior of various FileInfo methods.

ÉnumérationEnumeration Description Description
FileAccess Spécifie l’accès en lecture et écriture dans un fichier.Specifies read and write access to a file.
FileShare Spécifie le niveau d’accès autorisé pour un fichier qui est déjà en cours d’utilisation.Specifies the level of access permitted for a file that is already in use.
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.Specifies whether the contents of an existing file are preserved or overwritten, and whether requests to create an existing file cause an exception.

Notes

Dans les membres qui acceptent un chemin d’accès sous forme de chaîne d’entrée, ce chemin d’accès doit être correctement construit, ou une exception est levée.In members that accept a path as an input string, that path must be well-formed or an exception is raised. Par exemple, si un chemin d’accès est qualifié complet mais commence par un espace, le chemin d’accès n’est pas tronqué dans les méthodes de la classe.For example, if a path is fully qualified but begins with a space, the path is not trimmed in methods of the class. Par conséquent, le chemin d’accès est incorrect et une exception est levée.Therefore, the path is malformed and an exception is raised. De même, un chemin d’accès ou une combinaison de chemins d’accès ne peut pas être qualifiée à deux reprises.Similarly, a path or a combination of paths cannot be fully qualified twice. Par exemple, « c:\temp c:\windows » déclenche également une exception dans la plupart des cas.For example, "c:\temp c:\windows" also raises an exception in most cases. Assurez-vous que vos chemins sont correctement construits lors de l’utilisation des méthodes qui acceptent une chaîne de chemin d’accès.Ensure that your paths are well-formed when using methods that accept a path string.

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.In members that accept a path, the path can refer to a file or just a directory. 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 UNC Universal Naming Convention () pour un nom de serveur et le partage.The specified path can also refer to a relative path or a Universal Naming Convention (UNC) path for a server and share name. Par exemple, tous les éléments suivants sont des chemins d’accès acceptables :For example, all the following are acceptable paths:

  • « c:\\MyDir\\MyFile.txt » en c# ou « c:\MyDir\MyFile.txt » en Visual Basic."c:\\MyDir\\MyFile.txt" in C#, or "c:\MyDir\MyFile.txt" in Visual Basic.

  • « c:\\MyDir » en c# ou « c:\MyDir » en Visual Basic."c:\\MyDir" in C#, or "c:\MyDir" in Visual Basic.

  • « MyDir\\MySubdir » en c# ou « Monrépertoire\monsousrépertoire » en Visual Basic."MyDir\\MySubdir" in C#, or "MyDir\MySubDir" in Visual Basic.

  • «\\\\MyServer\\MyShare » en c#, ou «\\MyServer\MyShare » en Visual Basic."\\\\MyServer\\MyShare" in C#, or "\\MyServer\MyShare" in Visual Basic.

Le FileInfo classe fournit les propriétés suivantes qui vous permettent de récupérer des informations sur un fichier.The FileInfo class provides the following properties that enable you to retrieve information about a file. Pour obtenir un exemple montrant comment utiliser chaque propriété, consultez les pages de propriétés.For an example of how to use each property, see the property pages.

  • Le Directory propriété récupère un objet qui représente le répertoire parent d’un fichier.The Directory property retrieves an object that represents the parent directory of a file.

  • Le DirectoryName propriété récupère le chemin d’accès complet du répertoire parent d’un fichier.The DirectoryName property retrieves the full path of the parent directory of a file.

  • Le Exists propriété vérifie la présence d’un fichier avant de l’utiliser.The Exists property checks for the presence of a file before operating on it.

  • Le IsReadOnly propriété récupère ou définit une valeur qui spécifie si un fichier peut être modifié.The IsReadOnly property retrieves or sets a value that specifies whether a file can be modified.

  • Le Length récupère la taille d’un fichier.The Length retrieves the size of a file.

  • Le Name récupère le nom d’un fichier.The Name retrieves the name of a file.

Constructeurs

FileInfo(String) FileInfo(String) FileInfo(String) FileInfo(String)

Initialise une nouvelle instance de la classe FileInfo, qui sert de wrapper pour un chemin d'accès de fichier.Initializes a new instance of the FileInfo class, which acts as a wrapper for a file path.

Propriétés

Attributes Attributes Attributes Attributes

Obtient ou définit les attributs pour le fichier ou le répertoire actif.Gets or sets the attributes for the current file or directory.

(Inherited from FileSystemInfo)
CreationTime CreationTime CreationTime CreationTime

Obtient ou définit l'heure de création du fichier ou du répertoire actif.Gets or sets the creation time of the current file or directory.

(Inherited from FileSystemInfo)
CreationTimeUtc CreationTimeUtc CreationTimeUtc CreationTimeUtc

Obtient ou définit l'heure de création, au format de temps universel (UTC, Coordinated Universal Time), du fichier ou du répertoire actif.Gets or sets the creation time, in coordinated universal time (UTC), of the current file or directory.

(Inherited from FileSystemInfo)
Directory Directory Directory Directory

Obtient une instance du répertoire parent.Gets an instance of the parent directory.

DirectoryName DirectoryName DirectoryName DirectoryName

Obtient une chaîne représentant le chemin d’accès complet du répertoire.Gets a string representing the directory's full path.

Exists Exists Exists Exists

Obtient une valeur indiquant si un fichier existe.Gets a value indicating whether a file exists.

Extension Extension Extension Extension

Obtient la chaîne représentant l’extension du fichier.Gets the string representing the extension part of the file.

(Inherited from FileSystemInfo)
FullName FullName FullName FullName

Obtient le chemin d’accès complet du répertoire ou fichier.Gets the full path of the directory or file.

(Inherited from FileSystemInfo)
IsReadOnly IsReadOnly IsReadOnly IsReadOnly

Obtient ou définit une valeur qui détermine si le fichier actuel est en lecture seule.Gets or sets a value that determines if the current file is read only.

LastAccessTime LastAccessTime LastAccessTime LastAccessTime

Obtient ou définit l'heure du dernier accès au fichier ou répertoire actif.Gets or sets the time the current file or directory was last accessed.

(Inherited from FileSystemInfo)
LastAccessTimeUtc LastAccessTimeUtc LastAccessTimeUtc LastAccessTimeUtc

Obtient ou définit l'heure, au format de temps universel (UTC, Universal Coordinated Time), du dernier accès au fichier ou au répertoire actif.Gets or sets the time, in coordinated universal time (UTC), that the current file or directory was last accessed.

(Inherited from FileSystemInfo)
LastWriteTime LastWriteTime LastWriteTime LastWriteTime

Obtient ou définit l'heure de la dernière écriture dans le fichier ou répertoire actif.Gets or sets the time when the current file or directory was last written to.

(Inherited from FileSystemInfo)
LastWriteTimeUtc LastWriteTimeUtc LastWriteTimeUtc LastWriteTimeUtc

Obtient ou définit l'heure, au format de temps universel (UTC, Universal Coordinated Time), de la dernière écriture dans le fichier ou le répertoire actif.Gets or sets the time, in coordinated universal time (UTC), when the current file or directory was last written to.

(Inherited from FileSystemInfo)
Length Length Length Length

Obtient la taille en octets du fichier actuel.Gets the size, in bytes, of the current file.

Name Name Name Name

Obtient le nom du fichier.Gets the name of the file.

Méthodes

AppendText() AppendText() AppendText() AppendText()

Crée un élément StreamWriter qui ajoute du texte au fichier représenté par cette instance de FileInfo.Creates a StreamWriter that appends text to the file represented by this instance of the FileInfo.

CopyTo(String) CopyTo(String) CopyTo(String) CopyTo(String)

Copie un fichier existant vers un nouveau fichier, en interdisant le remplacement d'un fichier existant.Copies an existing file to a new file, disallowing the overwriting of an existing file.

CopyTo(String, Boolean) CopyTo(String, Boolean) CopyTo(String, Boolean) CopyTo(String, Boolean)

Copie un fichier existant vers un nouveau fichier, en autorisant le remplacement d'un fichier existant.Copies an existing file to a new file, allowing the overwriting of an existing file.

Create() Create() Create() Create()

Crée un fichier.Creates a file.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Crée un objet contenant toutes les informations appropriées requises pour générer un proxy permettant de communiquer avec un objet distant.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
CreateText() CreateText() CreateText() CreateText()

Crée un élément StreamWriter qui écrit un nouveau fichier texte.Creates a StreamWriter that writes a new text file.

Decrypt() Decrypt() Decrypt() Decrypt()

Déchiffre un fichier qui a été chiffré par le compte actuel à l'aide de la méthode Encrypt().Decrypts a file that was encrypted by the current account using the Encrypt() method.

Delete() Delete() Delete() Delete()

Supprime définitivement un fichier.Permanently deletes a file.

Encrypt() Encrypt() Encrypt() Encrypt()

Chiffre un fichier de sorte que seul le compte utilisé pour chiffrer le fichier peut le déchiffrer.Encrypts a file so that only the account used to encrypt the file can decrypt it.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetAccessControl() GetAccessControl() GetAccessControl() GetAccessControl()

Obtient un objet FileSecurity qui encapsule les entrées de la liste de contrôle d'accès (ACL) pour le fichier décrit par l'objet FileInfo actuel.Gets a FileSecurity object that encapsulates the access control list (ACL) entries for the file described by the current FileInfo object.

GetAccessControl(AccessControlSections) GetAccessControl(AccessControlSections) GetAccessControl(AccessControlSections) GetAccessControl(AccessControlSections)

Obtient un objet FileSecurity qui encapsule le type spécifié des entrées de la liste de contrôle d'accès (ACL) pour le répertoire décrit par l'objet FileInfo actuel.Gets a FileSecurity object that encapsulates the specified type of access control list (ACL) entries for the file described by the current FileInfo object.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Récupère l'objet de service de durée de vie en cours qui contrôle la stratégie de durée de vie de cette instance.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

Définit l'objet SerializationInfo à l'aide du nom de fichier et d'autres informations se rapportant à l'exception.Sets the SerializationInfo object with the file name and additional exception information.

(Inherited from FileSystemInfo)
GetType() GetType() GetType() GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Crée une copie superficielle de l'objet MarshalByRefObject actuel.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
MoveTo(String) MoveTo(String) MoveTo(String) MoveTo(String)

Déplace un fichier spécifié à un nouvel emplacement, en permettant de spécifier un nouveau nom.Moves a specified file to a new location, providing the option to specify a new file name.

MoveTo(String, Boolean) MoveTo(String, Boolean) MoveTo(String, Boolean) MoveTo(String, Boolean)
Open(FileMode) Open(FileMode) Open(FileMode) Open(FileMode)

Ouvre un fichier dans le mode spécifié.Opens a file in the specified mode.

Open(FileMode, FileAccess) Open(FileMode, FileAccess) Open(FileMode, FileAccess) Open(FileMode, FileAccess)

Ouvre un fichier dans le mode spécifié, avec accès en lecture, en écriture ou en lecture/écriture.Opens a file in the specified mode with read, write, or read/write access.

Open(FileMode, FileAccess, FileShare) Open(FileMode, FileAccess, FileShare) Open(FileMode, FileAccess, FileShare) Open(FileMode, FileAccess, FileShare)

Ouvre un fichier dans le mode spécifié, avec accès en lecture, en écriture ou en lecture/écriture, et l'option de partage spécifiée.Opens a file in the specified mode with read, write, or read/write access and the specified sharing option.

OpenRead() OpenRead() OpenRead() OpenRead()

Crée un élément FileStream en lecture seule.Creates a read-only FileStream.

OpenText() OpenText() OpenText() OpenText()

Crée un élément StreamReader avec encodage UTF-8 qui lit un fichier texte existant.Creates a StreamReader with UTF8 encoding that reads from an existing text file.

OpenWrite() OpenWrite() OpenWrite() OpenWrite()

Crée un élément FileStream en écriture seule.Creates a write-only FileStream.

Refresh() Refresh() Refresh() Refresh()

Actualise l'état de l'objet.Refreshes the state of the object.

(Inherited from FileSystemInfo)
Replace(String, String) Replace(String, String) Replace(String, String) Replace(String, String)

Remplace le contenu d'un fichier spécifié par le fichier décrit par l'objet FileInfo actuel, en supprimant le fichier d'origine et en créant une sauvegarde du fichier remplacé.Replaces the contents of a specified file with the file described by the current FileInfo object, deleting the original file, and creating a backup of the replaced file.

Replace(String, String, Boolean) Replace(String, String, Boolean) Replace(String, String, Boolean) Replace(String, String, Boolean)

Remplace le contenu d'un fichier spécifié par le fichier décrit par l'objet FileInfo actuel, en supprimant le fichier d'origine et en créant une sauvegarde du fichier remplacé.Replaces the contents of a specified file with the file described by the current FileInfo object, deleting the original file, and creating a backup of the replaced file. Spécifie également s'il faut ignorer les erreurs de fusion.Also specifies whether to ignore merge errors.

SetAccessControl(FileSecurity) SetAccessControl(FileSecurity) SetAccessControl(FileSecurity) SetAccessControl(FileSecurity)

Applique les entrées ACL décrites par un objet FileSecurity au fichier décrit par l'objet FileInfo actuel.Applies access control list (ACL) entries described by a FileSecurity object to the file described by the current FileInfo object.

ToString() ToString() ToString() ToString()

Retourne le chemin d’accès sous forme de chaîne.Returns the path as a string.

Champs

FullPath FullPath FullPath FullPath

Représente le chemin d’accès qualifié complet du répertoire ou fichier.Represents the fully qualified path of the directory or file.

(Inherited from FileSystemInfo)
OriginalPath OriginalPath OriginalPath OriginalPath

Chemin d’accès initialement spécifié par l’utilisateur, relatif ou absolu.The path originally specified by the user, whether relative or absolute.

(Inherited from FileSystemInfo)

Méthodes d’extension

GetAccessControl(FileInfo) GetAccessControl(FileInfo) GetAccessControl(FileInfo) GetAccessControl(FileInfo)
GetAccessControl(FileInfo, AccessControlSections) GetAccessControl(FileInfo, AccessControlSections) GetAccessControl(FileInfo, AccessControlSections) GetAccessControl(FileInfo, AccessControlSections)
SetAccessControl(FileInfo, FileSecurity) SetAccessControl(FileInfo, FileSecurity) SetAccessControl(FileInfo, FileSecurity) SetAccessControl(FileInfo, FileSecurity)

S’applique à

Voir aussi