TempFileCollection 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.
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 AddExtensionAddFile 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 effectuer le suivi d’une liste de fichiers. Cela peut être utile pour ICodeCompiler implémenter 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 dans lequel 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 ou AddExtension des AddFile 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 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 seul nom de fichier unique par extension de nom de fichier.
Les AddFile deux méthodes AddExtension ont des surcharges qui 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 qui sont 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.
Note
Cette classe contient une demande de liaison et une demande d’héritage au niveau de la classe qui s’applique à tous les membres. Un SecurityException est levé 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
| Nom | Description |
|---|---|
| TempFileCollection() |
Initialise une nouvelle instance de la TempFileCollection classe avec des valeurs par défaut. |
| TempFileCollection(String, Boolean) |
Initialise une nouvelle instance de la TempFileCollection classe à l’aide du répertoire temporaire spécifié et de la valeur spécifiée indiquant s’il faut conserver ou supprimer les fichiers temporaires après leur génération et leur utilisation, par défaut. |
| TempFileCollection(String) |
Initialise une nouvelle instance de la TempFileCollection classe à l’aide du répertoire temporaire spécifié qui est défini pour supprimer les fichiers temporaires après leur génération et leur utilisation, par défaut. |
Propriétés
| Nom | Description |
|---|---|
| BasePath |
Obtient le chemin complet du nom de fichier de base, sans extension de nom de fichier, sur le chemin d’accès du répertoire temporaire, utilisé pour générer des noms de fichiers temporaires pour la collection. |
| Count |
Obtient le nombre de fichiers dans la collection. |
| KeepFiles |
Obtient ou définit une valeur indiquant s’il faut conserver les fichiers, par défaut, lorsque la Delete() méthode est appelée ou si la collection est supprimée. |
| TempDir |
Obtient le répertoire temporaire dans lequel stocker les fichiers temporaires. |
Méthodes
| Nom | Description |
|---|---|
| AddExtension(String, Boolean) |
Ajoute un nom de fichier avec l’extension de nom de fichier spécifiée à la collection, en utilisant la valeur spécifiée indiquant si le fichier doit être supprimé ou conservé. |
| AddExtension(String) |
Ajoute un nom de fichier avec l’extension de nom de fichier spécifiée à la collection. |
| AddFile(String, Boolean) |
Ajoute le fichier spécifié à la collection, en utilisant la valeur spécifiée indiquant s’il faut conserver le fichier une fois la collection supprimée ou lorsque la Delete() méthode est appelée. |
| CopyTo(String[], Int32) |
Copie les membres de la collection dans la chaîne spécifiée, en commençant à l’index spécifié. |
| Delete() |
Supprime les fichiers temporaires de cette collection qui n’ont pas été marqués pour être conservés. |
| Dispose(Boolean) |
Libère les ressources non managées utilisées par les TempFileCollection ressources gérées 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 garbage collection. |
| GetEnumerator() |
Obtient un énumérateur qui peut énumérer les membres de la collection. |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| 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() |
Effectue des tâches définies par l’application associées à la libération, à la libération ou à la réinitialisation des ressources non managées. |
| IEnumerable.GetEnumerator() |
Retourne un énumérateur qui itère dans une collection. |
Méthodes d’extension
| Nom | Description |
|---|---|
| AsParallel(IEnumerable) |
Active la parallélisation d’une requête. |
| AsQueryable(IEnumerable) |
Convertit un IEnumerable en IQueryable. |
| Cast<TResult>(IEnumerable) |
Convertit les éléments d’un IEnumerable en type spécifié. |
| OfType<TResult>(IEnumerable) |
Filtre les éléments d’une IEnumerable en fonction d’un type spécifié. |