FileInfo Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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. Cette classe ne peut pas être héritée.
public ref class FileInfo sealed : System::IO::FileSystemInfo
public sealed class FileInfo : System.IO.FileSystemInfo
[System.Serializable]
public sealed class FileInfo : System.IO.FileSystemInfo
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class FileInfo : System.IO.FileSystemInfo
type FileInfo = class
inherit FileSystemInfo
[<System.Serializable>]
type FileInfo = class
inherit FileSystemInfo
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileInfo = class
inherit FileSystemInfo
Public NotInheritable Class FileInfo
Inherits FileSystemInfo
- Héritage
- Héritage
- Attributs
Exemples
L’exemple suivant illustre certains des main membres de la FileInfo
classe .
Lorsque les propriétés sont récupérées pour la première fois, FileInfo appelle la Refresh méthode et met en cache les informations sur le fichier. Lors des appels suivants, vous devez appeler Refresh pour obtenir la dernière copie des informations.
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();
var 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())
{
var s = "";
while ((s = sr.ReadLine()) != null)
{
Console.WriteLine(s);
}
}
try
{
string path2 = Path.GetTempFileName();
var fi2 = new FileInfo(path2);
// Ensure that the target does not exist.
fi2.Delete();
// Copy the file.
fi1.CopyTo(path2);
Console.WriteLine($"{path} was copied to {path2}.");
// Delete the newly created file.
fi2.Delete();
Console.WriteLine($"{path2} was successfully deleted.");
}
catch (Exception e)
{
Console.WriteLine($"The process failed: {e.ToString()}");
}
}
}
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 New FileInfo(path1)
' Create a file to write to.
Using sw As StreamWriter = fi.CreateText()
sw.WriteLine("Hello")
sw.WriteLine("And")
sw.WriteLine("Welcome")
End Using
Try
' Open the file to read from.
Using sr As StreamReader = fi.OpenText()
Do While sr.Peek() >= 0
Console.WriteLine(sr.ReadLine())
Loop
End Using
Dim fi2 As New FileInfo(path2)
' Ensure that the target does not exist.
fi2.Delete()
' Copy the file.
fi.CopyTo(path2)
Console.WriteLine($"{path1} was copied to {path2}.")
' Delete the newly created file.
fi2.Delete()
Console.WriteLine($"{path2} was successfully deleted.")
Catch e As Exception
Console.WriteLine($"The process failed: {e.ToString()}.")
End Try
End Sub
End Class
Cet exemple produit une sortie similaire à ce qui suit.
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 classiques telles que la copie, le déplacement, le renommage, la création, l’ouverture, la suppression et l’ajout de fichiers.
Si vous effectuez plusieurs opérations sur le même fichier, il peut être plus efficace d’utiliser FileInfo instance méthodes plutôt que les méthodes statiques correspondantes de la File classe, car une case activée de sécurité ne sera pas toujours nécessaire.
La plupart des FileInfo 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 FileInfo tels que Open, OpenRead, OpenText, CreateTextou Create.
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 FileInfo méthodes.
É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 conservé ou remplacé, et si les demandes de création d’un fichier existant provoquent une exception. |
Notes
Dans les membres qui acceptent un chemin en tant que chaîne d’entrée, ce chemin doit être correctement 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 réduit 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 d’accès ne peut pas être qualifié deux fois. Par exemple, « c:\temp c:\windows » déclenche également une exception dans la plupart des cas. Assurez-vous que vos chemins d’accès sont bien formés lorsque vous utilisez des méthodes qui acceptent une chaîne de chemin.
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 nom de serveur et de partage. Par exemple, tous les chemins d’accès suivants sont acceptables :
« c:\\MyDir\\MyFile.txt » en C# ou « c:\MyDir\MyFile.txt » en Visual Basic.
« c:\\MyDir » en C# ou « c:\MyDir » en Visual Basic.
« MyDir\\MySubdir » en C# ou « MyDir\MySubDir » en Visual Basic.
« \\\\MyServer\\MyShare » en C#, ou « \\MyServer\MyShare » en Visual Basic.
La FileInfo classe fournit les propriétés suivantes qui vous permettent de récupérer des informations sur un fichier. Pour obtenir un exemple d’utilisation de chaque propriété, consultez les pages de propriétés.
La Directory propriété récupère un objet qui représente le répertoire parent d’un fichier.
La DirectoryName propriété récupère le chemin d’accès complet du répertoire parent d’un fichier.
La Exists propriété vérifie la présence d’un fichier avant de l’utiliser.
La IsReadOnly propriété récupère ou définit une valeur qui spécifie si un fichier peut être modifié.
récupère Length la taille d’un fichier.
récupère Name le nom d’un fichier.
Constructeurs
FileInfo(String) |
Initialise une nouvelle instance de la classe FileInfo, qui sert de wrapper pour un chemin d'accès de fichier. |
Champs
FullPath |
Représente le chemin d'accès qualifié complet du répertoire ou fichier. (Hérité de FileSystemInfo) |
OriginalPath |
Chemin d’accès initialement spécifié par l’utilisateur, relatif ou absolu. (Hérité de FileSystemInfo) |
Propriétés
Attributes |
Obtient ou définit les attributs pour le fichier ou le répertoire actif. (Hérité de FileSystemInfo) |
CreationTime |
Obtient ou définit l'heure de création du fichier ou du répertoire actif. (Hérité de FileSystemInfo) |
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. (Hérité de FileSystemInfo) |
Directory |
Obtient une instance du répertoire parent. |
DirectoryName |
Obtient une chaîne représentant le chemin d’accès complet du répertoire. |
Exists |
Obtient une valeur indiquant si un fichier existe. |
Extension |
Obtient la partie extension du nom de fichier, y compris le point |
FullName |
Obtient le chemin d'accès complet du répertoire ou fichier. (Hérité de FileSystemInfo) |
IsReadOnly |
Obtient ou définit une valeur qui détermine si le fichier actuel est en lecture seule. |
LastAccessTime |
Obtient ou définit l'heure du dernier accès au fichier ou répertoire actif. (Hérité de FileSystemInfo) |
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. (Hérité de FileSystemInfo) |
LastWriteTime |
Obtient ou définit l'heure de la dernière écriture dans le fichier ou répertoire actif. (Hérité de FileSystemInfo) |
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. (Hérité de FileSystemInfo) |
Length |
Obtient la taille en octets du fichier actuel. |
LinkTarget |
Obtient le chemin cible du lien situé dans FullName, ou |
Name |
Obtient le nom du fichier. |
UnixFileMode |
Obtient ou définit le mode de fichier Unix pour le fichier ou répertoire actif. (Hérité de FileSystemInfo) |
Méthodes
AppendText() |
Crée un élément StreamWriter qui ajoute du texte au fichier représenté par cette instance de FileInfo. |
CopyTo(String) |
Copie un fichier existant vers un nouveau fichier, en interdisant le remplacement d'un fichier existant. |
CopyTo(String, Boolean) |
Copie un fichier existant vers un nouveau fichier, en autorisant le remplacement d'un fichier existant. |
Create() |
Crée un fichier. |
CreateAsSymbolicLink(String) |
Crée un lien symbolique situé dans FullName qui pointe vers le spécifié |
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. (Hérité de MarshalByRefObject) |
CreateText() |
Crée un élément StreamWriter qui écrit un nouveau fichier texte. |
Decrypt() |
Déchiffre un fichier qui a été chiffré par le compte actuel à l'aide de la méthode Encrypt(). |
Delete() |
Supprime définitivement un fichier. |
Encrypt() |
Chiffre un fichier de sorte que seul le compte utilisé pour chiffrer le fichier peut le déchiffrer. |
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
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. |
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. |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetLifetimeService() |
Obsolète.
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. (Hérité de MarshalByRefObject) |
GetObjectData(SerializationInfo, StreamingContext) |
Obsolète.
Définit l'objet SerializationInfo à l'aide du nom de fichier et d'autres informations se rapportant à l'exception. (Hérité de FileSystemInfo) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
InitializeLifetimeService() |
Obsolète.
Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance. (Hérité de MarshalByRefObject) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
MemberwiseClone(Boolean) |
Crée une copie superficielle de l'objet MarshalByRefObject actuel. (Hérité de MarshalByRefObject) |
MoveTo(String) |
Déplace un fichier spécifié à un nouvel emplacement, en permettant de spécifier un nouveau nom. |
MoveTo(String, Boolean) |
Déplace un fichier spécifié vers un nouvel emplacement, en fournissant les options permettant de spécifier un nouveau nom de fichier et de remplacer le fichier de destination s’il existe déjà. |
Open(FileMode) |
Ouvre un fichier dans le mode spécifié. |
Open(FileMode, FileAccess) |
Ouvre un fichier dans le mode spécifié, avec accès en lecture, en écriture ou en lecture/écriture. |
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. |
Open(FileStreamOptions) |
Initialise une nouvelle instance de la classe avec le FileStream mode de création, l’autorisation de lecture/écriture et de partage spécifiée, l’accès d’autres FileStreams au même fichier, la taille de la mémoire tampon, les options de fichier supplémentaires et la taille d’allocation. |
OpenRead() |
Crée un élément FileStream en lecture seule. |
OpenText() |
Crée un élément StreamReader avec encodage UTF-8 qui lit un fichier texte existant. |
OpenWrite() |
Crée un élément FileStream en écriture seule. |
Refresh() |
Actualise l'état de l'objet. (Hérité de FileSystemInfo) |
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é. |
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é. Spécifie également s'il faut ignorer les erreurs de fusion. |
ResolveLinkTarget(Boolean) |
Obtient la cible du lien spécifié. (Hérité de FileSystemInfo) |
SetAccessControl(FileSecurity) |
Applique les entrées ACL décrites par un objet FileSecurity au fichier décrit par l'objet FileInfo actuel. |
ToString() |
Retourne le chemin d’accès d’origine passé au constructeur FileInfo. Utilisez la FullName propriété ou Name pour le chemin d’accès complet ou le nom de fichier. |
ToString() |
Retourne le chemin d’origine. Utilisez les propriétés FullName ou Name pour le chemin complet ou le nom de fichier/répertoire. (Hérité de FileSystemInfo) |
Méthodes d’extension
Create(FileInfo, FileMode, FileSystemRights, FileShare, Int32, FileOptions, FileSecurity) |
Crée un flux de fichier en veillant à ce qu’il soit créé avec les propriétés et les paramètres de sécurité spécifiés. |
GetAccessControl(FileInfo) |
Retourne les informations de sécurité d’un fichier. |
GetAccessControl(FileInfo, AccessControlSections) |
Retourne les informations de sécurité d’un fichier. |
SetAccessControl(FileInfo, FileSecurity) |
Change les attributs de sécurité d’un fichier existant. |
S’applique à
Voir aussi
Commentaires
Envoyer et afficher des commentaires pour