TempFileCollection Classe

Définition

Représente une collection de fichiers temporaires.Represents a collection of temporary files.

public ref class TempFileCollection : IDisposable, System::Collections::ICollection
[System.Serializable]
public class TempFileCollection : IDisposable, System.Collections.ICollection
type TempFileCollection = class
    interface ICollection
    interface IEnumerable
    interface IDisposable
Public Class TempFileCollection
Implements ICollection, IDisposable
Héritage
TempFileCollection
Attributs
Implémente

Exemples

L’exemple suivant illustre l’utilisation de la TempFileCollection classe AddExtension et des méthodes AddFile et.The following example shows the use of the TempFileCollection class and the AddExtension and AddFile methods.

using System;
using System.CodeDom.Compiler;
using System.IO;

class Program
{
    static void Main(string[] args)
    {
        // Create a directory in the current working directory.
        Directory.CreateDirectory("testDir");
        TempFileCollection tfc = new TempFileCollection("testDir", false);
        // Returns the file name relative to the current working directory.
        string fileName = tfc.AddExtension("txt");
        Console.WriteLine(fileName);
        // Name a file in the test directory.
        string file2Name = "testDir\\test.txt";
        // Add the file to the temp directory and indicate it is to be kept.
        tfc.AddFile(file2Name, true);
        Console.WriteLine(tfc.Count);
        // Create and use the test files.
        FileStream fs1 = File.OpenWrite(fileName);
        FileStream fs2 = File.OpenWrite(file2Name);
        StreamWriter sw1 = new StreamWriter(fs1);
        StreamWriter sw2 = new StreamWriter(fs2);
        sw1.WriteLine("Test string");
        sw2.WriteLine("Test string");
        sw1.Close();
        sw2.Close();
        tfc.Delete();
        Console.WriteLine(tfc.Count);
        try
        {
            // This call should succeed.
            File.OpenRead(file2Name);
            // This call should fail.
            File.OpenRead(fileName);
        }
        catch (FileNotFoundException e)
        {
            Console.WriteLine(e.Message);
        }

    }

}
Imports System.CodeDom.Compiler
Imports System.IO



Class Program
    
    Shared Sub Main(ByVal args() As String) 
        ' Create a directory in the current working directory.
        Directory.CreateDirectory("testDir")
        Dim tfc As New TempFileCollection("testDir", False)
        ' Returns the file name relative to the current working directory.
        Dim fileName As String = tfc.AddExtension("txt")
        Console.WriteLine(fileName)
        ' Name a file in the test directory.
        Dim file2Name As String = "testDir\test.txt"
        ' Add the file to the temp directory and indicate it is to be kept.
        tfc.AddFile(file2Name, True)
        Console.WriteLine(tfc.Count)
        ' Create and use the test files.
        Dim fs1 As FileStream = File.OpenWrite(fileName)
        Dim fs2 As FileStream = File.OpenWrite(file2Name)
        Dim sw1 As New StreamWriter(fs1)
        Dim sw2 As New StreamWriter(fs2)
        sw1.WriteLine("Test string")
        sw2.WriteLine("Test string")
        sw1.Close()
        sw2.Close()
        tfc.Delete()
        Console.WriteLine(tfc.Count)
        Try
            ' This call should succeed.
            File.OpenRead(file2Name)
            ' This call should fail.
            File.OpenRead(fileName)
        Catch e As FileNotFoundException
            Console.WriteLine(e.Message)
        End Try
    
    End Sub
End Class

Remarques

TempFileCollectionpeut être utilisé pour générer des noms de fichiers uniques et pour effectuer le suivi d’une liste de fichiers.TempFileCollection can be used to generate unique file names and to keep track of a list of files. Cela peut être utile pour ICodeCompiler les implémenteurs lors de la gestion d’une liste de fichiers intermédiaires générés par le compilateur, parfois supprimés après utilisation.This can be useful to ICodeCompiler implementers when managing a list of compiler-generated intermediate files, which are sometimes deleted after use.

Pour spécifier un répertoire pour générer des noms de fichiers temporaires uniques dans, utilisez un constructeur surchargé de manière appropriée.To specify a directory to generate unique temporary file names in, use an appropriately overloaded constructor. Vous pouvez également utiliser une surcharge de constructeur pour indiquer si les fichiers ajoutés à la collection doivent, s’ils ne sont pas AddFile spécifiés lors de l’utilisation des méthodes ou AddExtension , être supprimés lorsque la Delete collection est supprimée ou que la méthode est appelée.You can also use a constructor overload to indicate whether files added to the collection should, if not specified otherwise when using the AddFile or AddExtension methods, be deleted when the collection is disposed or the Delete method is called.

Un fichier dans un répertoire peut être ajouté à une instance de TempFileCollection à l' AddFile aide de la méthode.A file in any directory can be added to an instance of TempFileCollection using the AddFile method.

Pour générer un nom unique pour un fichier temporaire d’une extension de fichier particulière, AddExtension appelez et spécifiez l’extension du nom de fichier à générer.To generate a unique name for a temporary file of a particular file extension, call AddExtension and specify the extension of the file name to generate. La AddExtension méthode retourne une chaîne qui se compose d’un chemin d’accès complet à un nom de fichier de l’extension spécifiée dans le TempDir répertoire spécifié par la propriété.The AddExtension method will return a string consisting of a full path to a file name of the specified extension in the directory specified by the TempDir property. La AddExtension méthode retourne uniquement un nom de fichier unique par extension de nom de fichier.The AddExtension method will only return one unique file name per file name extension.

Les AddFile méthodes et AddExtension ont des surcharges qui vous permettent de spécifier si les fichiers doivent être supprimés lors de la suppression de la collection ou si Delete la méthode est appelée.Both the AddFile and AddExtension methods have overloads that allow you to specify whether the files should be deleted when the collection is disposed or the Delete method is called.

La Delete méthode supprime tous les fichiers de la collection, à l’exception de ceux qui sont marqués comme étant conservés.The Delete method will delete all the files in the collection except those that are marked to be kept.

La BasePath propriété indique un chemin d’accès complet au nom de fichier de base, sans extension de nom de fichier, utilisé pour générer les noms AddExtension de fichiers retournés par la méthode.The BasePath property indicates a full path to the base file name, without a file name extension, used to generate the file names returned by the AddExtension method.

Notes

Cette classe contient une demande de liaison et une demande d’héritage au niveau de la classe qui s’applique à tous les membres.This class contains a link demand and an inheritance demand at the class level that applies to all members. Une SecurityException exception est levée lorsque l’appelant immédiat ou la classe dérivée ne dispose pas d’une autorisation de confiance totale.A SecurityException is thrown when either the immediate caller or the derived class does not have full-trust permission. Pour plus d’informations sur les demandes de sécurité, consultez demandes de liaison et demandes d’héritage.For details about security demands, see Link Demands and Inheritance Demands.

Constructeurs

TempFileCollection()

Initialise une nouvelle instance de la classe TempFileCollection avec des valeurs par défaut.Initializes a new instance of the TempFileCollection class with default values.

TempFileCollection(String)

Initialise une nouvelle instance de la classe TempFileCollection avec le répertoire temporaire spécifié, défini de façon à supprimer par défaut les fichiers temporaires après leur génération et leur utilisation.Initializes a new instance of the TempFileCollection class using the specified temporary directory that is set to delete the temporary files after their generation and use, by default.

TempFileCollection(String, Boolean)

Initialise une nouvelle instance de la classe TempFileCollection avec le répertoire temporaire spécifié et la valeur spécifiée indiquant si les fichiers temporaires doivent être conservés ou supprimés par défaut après leur génération et leur utilisation.Initializes a new instance of the TempFileCollection class using the specified temporary directory and specified value indicating whether to keep or delete the temporary files after their generation and use, by default.

Propriétés

BasePath

Obtient le chemin d'accès complet du nom de fichier de base, sans extension de fichier, dans le chemin d'accès du répertoire temporaire, utilisé pour générer les noms de fichiers temporaires pour la collection.Gets the full path to the base file name, without a file name extension, on the temporary directory path, that is used to generate temporary file names for the collection.

Count

Obtient le nombre de fichiers contenus dans la collection.Gets the number of files in the collection.

KeepFiles

Obtient ou définit une valeur indiquant si les fichiers doivent être conservés, par défaut, lors de l'appel à la méthode Delete() ou de la suppression de la collection.Gets or sets a value indicating whether to keep the files, by default, when the Delete() method is called or the collection is disposed.

TempDir

Obtient le répertoire temporaire dans lequel les fichiers temporaires doivent être stockés.Gets the temporary directory to store the temporary files in.

Méthodes

AddExtension(String)

Ajoute à la collection un nom de fichier doté de l'extension de nom de fichier spécifiée.Adds a file name with the specified file name extension to the collection.

AddExtension(String, Boolean)

Ajoute à la collection un nom de fichier doté de l'extension de nom de fichier spécifiée, en utilisant la valeur spécifiée qui indique si le fichier doit être supprimé ou conservé.Adds a file name with the specified file name extension to the collection, using the specified value indicating whether the file should be deleted or retained.

AddFile(String, Boolean)

Ajoute le fichier spécifié à la collection, en utilisant la valeur spécifiée qui indique si le fichier doit être supprimé ou conservé lorsque la collection est supprimée ou que la méthode Delete() est appelée.Adds the specified file to the collection, using the specified value indicating whether to keep the file after the collection is disposed or when the Delete() method is called.

CopyTo(String[], Int32)

Copie les membres de la collection dans la chaîne spécifiée, en commençant à l'index indiqué.Copies the members of the collection to the specified string, beginning at the specified index.

Delete()

Supprime de cette collection les fichiers temporaires qui ont été marqués pour être supprimés.Deletes the temporary files within this collection that were not marked to be kept.

Dispose(Boolean)

Libère les ressources non managées utilisées par TempFileCollection et libère éventuellement les ressources managées.Releases the unmanaged resources used by the TempFileCollection and optionally releases the managed resources.

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.

(Hérité de Object)
Finalize()

Tente de supprimer les fichiers temporaires avant que cet objet ne soit récupéré par un garbage collection.Attempts to delete the temporary files before this object is reclaimed by garbage collection.

GetEnumerator()

Obtient un énumérateur pouvant énumérer les membres de la collection.Gets an enumerator that can enumerate the members of the collection.

GetHashCode()

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

(Hérité de Object)
GetType()

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

(Hérité de Object)
MemberwiseClone()

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

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Hérité de Object)

Implémentations d’interfaces explicites

ICollection.CopyTo(Array, Int32)

Copie les éléments de la collection dans un tableau, en commençant à l'index spécifié du tableau cible.Copies the elements of the collection to an array, starting at the specified index of the target array.

ICollection.Count

Obtient le nombre d’éléments contenus dans la collection.Gets the number of elements contained in the collection.

ICollection.IsSynchronized

Obtient une valeur indiquant si l’accès à la collection est synchronisé (thread-safe).Gets a value indicating whether access to the collection is synchronized (thread safe).

ICollection.SyncRoot

Obtient un objet qui peut être utilisé pour synchroniser l’accès à la collection.Gets an object that can be used to synchronize access to the collection.

IDisposable.Dispose()

Exécute les tâches définies par l'application associées à la libération ou à la redéfinition des ressources non managées.Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

IEnumerable.GetEnumerator()

Retourne un énumérateur qui itère au sein d’une collection.Returns an enumerator that iterates through a collection.

Méthodes d’extension

Cast<TResult>(IEnumerable)

Effectue un cast des éléments d'un IEnumerable vers le type spécifié.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtre les éléments d'un IEnumerable en fonction du type spécifié.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Active la parallélisation d'une requête.Enables parallelization of a query.

AsQueryable(IEnumerable)

Convertit un IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

Sécurité

SecurityPermission
pour dériver de la TempFileCollection classe.for deriving from the TempFileCollection class. Valeur de la InheritanceDemanddemande:; PermissionSet: FullTrust.Demand value: InheritanceDemand; PermissionSet: FullTrust.

S’applique à