TempFileCollection Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Geçici dosyalar koleksiyonunu temsil eder.
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
- Devralma
-
TempFileCollection
- Öznitelikler
- Uygulamalar
Örnekler
Aşağıdaki örnekte sınıfının ve ve AddFile yöntemlerinin TempFileCollectionAddExtension kullanımı gösterilmektedir.
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
Açıklamalar
TempFileCollection benzersiz dosya adları oluşturmak ve dosya listesini izlemek için kullanılabilir. Bu, derleyici tarafından oluşturulan ve bazen kullanımdan sonra silinen ara dosyaların listesini yönetirken uygulayıcılar için ICodeCompiler yararlı olabilir.
içinde benzersiz geçici dosya adları oluşturmak üzere bir dizin belirtmek için, uygun şekilde aşırı yüklenmiş bir oluşturucu kullanın. Koleksiyona eklenen dosyaların, veya AddExtension yöntemleri kullanılırken AddFile aksi belirtilmediyse koleksiyon atıldığında veya Delete yöntemi çağrıldığında silinmesi gerekip gerekmediğini belirtmek için bir oluşturucu aşırı yüklemesi de kullanabilirsiniz.
Herhangi bir dizindeki bir dosya, yöntemi kullanılarak bir örneğine TempFileCollectionAddFile eklenebilir.
Belirli bir dosya uzantısının geçici bir dosyası için benzersiz bir ad oluşturmak için çağırın AddExtension ve oluşturulacak dosya adının uzantısını belirtin. yöntemi, AddExtension özelliği tarafından TempDir belirtilen dizinde belirtilen uzantının dosya adının tam yolunu içeren bir dize döndürür. yöntemi, AddExtension dosya adı uzantısı başına yalnızca bir benzersiz dosya adı döndürür.
Hem hem de AddExtension yöntemleri, AddFile koleksiyon atıldığında veya yöntemi çağrıldığında dosyaların silinip silinmeyeceğini belirtmenize Delete olanak sağlayan aşırı yüklemelere sahiptir.
Delete yöntemi, tutulacak şekilde işaretlenmiş olanlar dışında koleksiyondaki tüm dosyaları siler.
BasePath özelliği, yöntemi tarafından AddExtension döndürülen dosya adlarını oluşturmak için kullanılan dosya adı uzantısı olmadan temel dosya adının tam yolunu gösterir.
Not
Bu sınıf, bir bağlantı talebi ve tüm üyeler için geçerli olan sınıf düzeyinde devralma talebi içerir. Hemen SecurityException çağıranın veya türetilen sınıfın tam güven izni olmadığında bir oluşturulur. Güvenlik talepleri hakkında ayrıntılı bilgi için bkz. Bağlantı Talepleri ve Devralma Talepleri.
Oluşturucular
TempFileCollection() |
TempFileCollection sınıfının yeni bir örneğini varsayılan değerlerle başlatır. |
TempFileCollection(String) |
Varsayılan olarak, oluşturma ve kullanmalarından sonra geçici dosyaları silmek için ayarlanan belirtilen geçici dizini kullanarak sınıfının yeni bir örneğini TempFileCollection başlatır. |
TempFileCollection(String, Boolean) |
Belirtilen geçici dizini ve belirtilen değeri kullanarak sınıfın TempFileCollection yeni bir örneğini başlatır ve varsayılan olarak geçici dosyaların oluşturulmasından ve kullanımından sonra tutulup silinmeyeceğini belirtir. |
Özellikler
BasePath |
Koleksiyon için geçici dosya adları oluşturmak için kullanılan geçici dizin yolunda, dosya adı uzantısı olmadan temel dosya adının tam yolunu alır. |
Count |
Koleksiyondaki dosya sayısını alır. |
KeepFiles |
Yöntem çağrıldığında veya koleksiyon atıldığında Delete() varsayılan olarak dosyaların tutulup tutulmayacağını belirten bir değer alır veya ayarlar. |
TempDir |
Geçici dosyaları depolamak için geçici dizini alır. |
Yöntemler
AddExtension(String) |
Koleksiyona belirtilen dosya adı uzantısına sahip bir dosya adı ekler. |
AddExtension(String, Boolean) |
Belirtilen dosya adı uzantısına sahip bir dosya adını koleksiyona ekler ve belirtilen değeri kullanarak dosyanın silinmesi veya saklanması gerektiğini belirtir. |
AddFile(String, Boolean) |
Belirtilen dosyayı koleksiyona ekler ve belirtilen değeri kullanarak koleksiyon atıldıktan sonra veya yöntemi çağrıldığında Delete() dosyanın tutulup tutulmayacağını belirtir. |
CopyTo(String[], Int32) |
Koleksiyonun üyelerini belirtilen dizinden başlayarak belirtilen dizeye kopyalar. |
Delete() |
Bu koleksiyon içinde saklanmak üzere işaretlenmeyen geçici dosyaları siler. |
Dispose(Boolean) |
TempFileCollection tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak serbest bırakır. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
Finalize() |
Bu nesne çöp toplama tarafından geri kazanılmadan önce geçici dosyaları silmeye çalışır. |
GetEnumerator() |
Koleksiyonun üyelerini numaralandırabilen bir numaralandırıcı alır. |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Belirtik Arabirim Kullanımları
ICollection.CopyTo(Array, Int32) |
Koleksiyonun öğelerini hedef dizinin belirtilen dizininden başlayarak bir diziye kopyalar. |
ICollection.Count |
Koleksiyondaki öğelerin sayısını alır. |
ICollection.IsSynchronized |
Koleksiyona erişimin eşitlenip eşitlenmediğini belirten bir değer alır (iş parçacığı güvenli). |
ICollection.SyncRoot |
Koleksiyona erişimi eşitlemek için kullanılabilecek bir nesne alır. |
IDisposable.Dispose() |
Uygulama tarafından tanımlanan, yönetilmeyen kaynakları serbest bırakma, salma veya sıfırlama ile ilişkili görevleri gerçekleştirir. |
IEnumerable.GetEnumerator() |
Bir toplulukta tekrarlanan bir numaralandırıcı döndürür. |
Uzantı Metotları
Cast<TResult>(IEnumerable) |
öğesinin IEnumerable öğelerini belirtilen türe atar. |
OfType<TResult>(IEnumerable) |
Öğesinin IEnumerable öğelerini belirtilen türe göre filtreler. |
AsParallel(IEnumerable) |
Sorgunun paralelleştirilmesini etkinleştirir. |
AsQueryable(IEnumerable) |
bir IEnumerable öğesini öğesine IQueryabledönüştürür. |