TempFileCollection Classe

Définition

Représente une collection de fichiers temporaires.

public ref class TempFileCollection : IDisposable, System::Collections::ICollection
public class TempFileCollection : IDisposable, System.Collections.ICollection
[System.Serializable]
public class TempFileCollection : IDisposable, System.Collections.ICollection
type TempFileCollection = class
    interface ICollection
    interface IEnumerable
    interface IDisposable
[<System.Serializable>]
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 montre l’utilisation de la TempFileCollection classe et des AddExtension AddFile méthodes.

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

TempFileCollection peut être utilisé pour générer des noms de fichiers uniques et pour suivre une liste de fichiers. 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, qui sont parfois supprimés après utilisation.

Pour spécifier un répertoire pour générer des noms de fichiers temporaires uniques, utilisez un constructeur surchargé de manière appropriée. Vous pouvez également utiliser une surcharge de constructeur pour indiquer si les fichiers ajoutés à la collection doivent, s’ils ne sont pas spécifiés dans le cas contraire, lors de l’utilisation de la AddFile ou AddExtension des méthodes, être supprimés lorsque la collection est supprimée ou si la Delete méthode est appelée.

Un fichier dans n’importe quel répertoire peut être ajouté à une instance d’utilisation de TempFileCollection la AddFile méthode.

Pour générer un nom unique pour un fichier temporaire d’une extension de fichier particulière, appelez AddExtension et spécifiez l’extension du nom de fichier à générer. La AddExtension méthode retourne une chaîne composée d’un chemin d’accès complet à un nom de fichier de l’extension spécifiée dans le répertoire spécifié par la TempDir propriété. La AddExtension méthode ne retourne qu’un nom de fichier unique par extension de nom de fichier.

Les méthodes et AddExtension les AddFile surcharges vous permettent de spécifier si les fichiers doivent être supprimés lorsque la collection est supprimée ou si la Delete méthode est appelée.

La Delete méthode supprime tous les fichiers de la collection, sauf ceux marqués pour être conservés.

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 de fichiers retournés par la AddExtension méthode.

Notes

Cette classe contient une demande de lien et une demande d’héritage au niveau de la classe qui s’applique à tous les membres. Un SecurityException est levée lorsque l’appelant immédiat ou la classe dérivée n’a pas d’autorisation de confiance totale. Pour plus d’informations sur les demandes de sécurité, consultez Demandes de liaison et demandes d’héritage.

Constructeurs

TempFileCollection()

Initialise une nouvelle instance de la classe TempFileCollection avec les valeurs par défaut.

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.

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.

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.

Count

Obtient le nombre de fichiers contenus dans la 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.

TempDir

Obtient le répertoire temporaire dans lequel les fichiers temporaires doivent être stockés.

Méthodes

AddExtension(String)

Ajoute à la collection un nom de fichier doté de l'extension de nom de fichier spécifiée.

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é.

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.

CopyTo(String[], Int32)

Copie les membres de la collection dans la chaîne spécifiée, en commençant à l'index indiqué.

Delete()

Supprime de cette collection les fichiers temporaires qui ont été marqués pour être supprimés.

Dispose(Boolean)

Libère les ressources non managées utilisées par TempFileCollection et libère éventuellement les ressources managées.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
Finalize()

Tente de supprimer les fichiers temporaires avant que cet objet ne soit récupéré par un garbage collection.

GetEnumerator()

Obtient un énumérateur pouvant énumérer les membres de la collection.

GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(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.

ICollection.Count

Obtient le nombre d’éléments contenus dans la collection.

ICollection.IsSynchronized

Obtient une valeur indiquant si l’accès à la collection est synchronisé (thread-safe).

ICollection.SyncRoot

Obtient un objet qui peut être utilisé pour synchroniser l’accès à la 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.

IEnumerable.GetEnumerator()

Retourne un énumérateur qui itère au sein d’une collection.

Méthodes d’extension

Cast<TResult>(IEnumerable)

Effectue un cast des éléments d'un IEnumerable vers le type spécifié.

OfType<TResult>(IEnumerable)

Filtre les éléments d'un IEnumerable en fonction du type spécifié.

AsParallel(IEnumerable)

Active la parallélisation d'une requête.

AsQueryable(IEnumerable)

Convertit un IEnumerable en IQueryable.

S’applique à