Class SevenZipArchive

Class SevenZipArchive

İsim alanı : Aspose.Zip.SevenZip Toplama: Aspose.Zip.dll (25.5.0)

Bu sınıf 7z arşiv dosyasını temsil eder. 7z arşivlerini oluşturmak ve çıkarmak için kullanın.

public class SevenZipArchive : IArchive, IDisposable

Inheritance

object SevenZipArchive

Implements

IArchive , IDisposable

mirasçı üyeleri

object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Constructors

SevenZipArchive(SevenZipEntrySettings)

Aspose.Zip.SevenZip.SevenZipArchive sınıfının yeni bir örneğini girişleri için seçmeli ayarlarla başlatır.

public SevenZipArchive(SevenZipEntrySettings newEntrySettings = null)

Parameters

newEntrySettings SevenZipEntrySettings

Yeni eklenen Aspose.Zip.SevenZip.SevenZipArchiveEntry öğeleri için kullanılan sıkıştırma ve şifreleme ayarları.Eğer belirtilmezse, LZMA şifreleme olmadan sıkıştırma kullanılacaktır.

Examples

Aşağıdaki örnek, varsayılan ayarlarla tek bir dosyayı nasıl sıkıştırılacağını gösterir: Şifreleme olmadan LZMA kompresyonu.

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("data.bin", "file.dat");
        archive.Save(sevenZipFile);
    }
}

SevenZipArchive(akış, string)

Aspose.Zip.SevenZip.SevenZipArchive sınıfının yeni bir örneğini başlatır ve arşivden çıkarılabilecek bir giriş listesini oluşturur.

public SevenZipArchive(Stream sourceStream, string password = null)

Parameters

sourceStream Stream

Arşiv kaynağıdır.

password string

Seçmeli şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme

Examples

using (SevenZipArchive archive = new SevenZipArchive(File.OpenRead("archive.7z")))
{
    archive.ExtractToDirectory("C:\\extracted");
}

Remarks

Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String,System.String) dekompresyon yöntemi.

Exceptions

ArgumentException

sourceStream’ is not seekable.

ArgumentNullException

sourceStream’ is null.

NotImplementedException

Arşiv bir kodlayıcıdan daha fazlasını içerir. şimdi sadece LZMA sıkıştırma desteklenir.

SevenZipArchive(String ve String)

Aspose.Zip.SevenZip.SevenZipArchive sınıfının yeni bir örneğini başlatır ve arşivden çıkarılabilecek bir giriş listesini oluşturur.

public SevenZipArchive(string path, string password = null)

Parameters

path string

Tamamen nitelikli veya arşiv dosyasına ilişkin yol.

password string

Seçmeli şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme

Examples

using (SevenZipArchive archive = new SevenZipArchive("archive.7z"))
{
    archive.ExtractToDirectory("C:\\extracted");
}

Remarks

Aspose.Zip.SevenZip.SevenZipArchive.ExtractToDirectory(System.String,System.String) dekompresyon yöntemi.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Müşteri, gerekli izinleri almamaktadır.

ArgumentException

path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.

UnauthorizedAccessException

path" dosyasına erişim reddedilir.

PathTooLongException

Belirlenen path’, dosya adı, ya da her ikisi de sistem tarafından tanımlanan maksimum uzunluğu aşmaktadır. Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.

NotSupportedException

path’daki dosya, satırın ortasında bir sütun (:) içerir.

FileNotFoundException

Dosya bulunamadı.

DirectoryNotFoundException

Belirlenmiş yol geçersizdir, örneğin haritalmamış bir sürücü üzerinde olması.

IOException

Dosya zaten açıktır.

SevenZipArchive(Sırt[…], Sırt)

Aspose.Zip.SevenZip.SevenZipArchive sınıfının yeni bir örneğini multi-volume 7z arşivinden başlatır ve arşivden çıkarılabilecek bir giriş listesi oluşturur.

public SevenZipArchive(string[] parts, string password = null)

Parameters

parts string […]

7z multi-volume arşivinin her segmentine yollar sırasına uymak

password string

Seçmeli şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme şifreleme

Examples

using (SevenZipArchive archive = new SevenZipArchive(new string[] { "multi.7z.001", "multi.7z.002", "multi.7z.003" }))
{
    archive.ExtractToDirectory("C:\\extracted");
}

Exceptions

ArgumentNullException

parts’ is null.

ArgumentException

parts’ has no entries.

SecurityException

Müşteri, gerekli izinleri almamaktadır.

ArgumentException

Bir dosyaya giden yol boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.

UnauthorizedAccessException

Bir dosyaya erişimi reddedilir.

PathTooLongException

Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden daha az olmalıdır ve dosya isimleri 260 karakterden daha az olmalıdır.

NotSupportedException

Bir yoldaki dosya, çizginin ortasında bir kolon (:) içerir.

Properties

Entries

Arşiv oluşturan Aspose.Zip.SevenZip.SevenZipArchiveEntry tipi girişleri alır.

public ReadOnlyCollection<sevenziparchiveentry> Entries { get; }

Mülkiyet Değer

ReadOnlyCollection &lt için; SevenZipArchiveEntry >

NewEntrySettings

Yeni eklenen Aspose.Zip.SevenZip.SevenZipArchiveEntry öğeleri için kullanılan sıkıştırma ve şifreleme ayarları.

public SevenZipEntrySettings NewEntrySettings { get; }

Mülkiyet Değer

SevenZipEntrySettings

Methods

CreateEntries(Etiket Arşivi: bool)

Dosyaya tüm dosyaları ve dizinleri verilen dizinlerde tekrarlayarak ekleyin.

public SevenZipArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)

Parameters

directory DirectoryInfo

Kompres için bir dizin.

includeRootDirectory bool

Kök dizininin kendisini içerip içermediğini gösterir.

Returns

SevenZipArchive

Arşiv içeriği hazırlanmıştır.

Examples

using (SevenZipArchive archive = new SevenZipArchive())
{
    DirectoryInfo folder = new DirectoryInfo("C:\folder");
    archive.CreateEntries(folder);
    archive.Save("folder.7z");
}

Exceptions

DirectoryNotFoundException

directory’ye giden yol geçersizdir, örneğin haritalmamış bir sürücü üzerinde olması gibi.

SecurityException

Çağrıcı, directory’ye erişmek için gerekli izin vermez.

CreateEntries(Çerçeve , Bool)

Dosyaya tüm dosyaları ve dizinleri verilen dizinlerde tekrarlayarak ekleyin.

public SevenZipArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)

Parameters

sourceDirectory string

Kompres için bir dizin.

includeRootDirectory bool

Kök dizininin kendisini içerip içermediğini gösterir.

Returns

SevenZipArchive

Arşiv içeriği hazırlanmıştır.

Examples

7z arşivi LZMA2 kompresyonu ile birleştirin.

using (SevenZipArchive archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMACompressionSettings())))
{
    archive.CreateEntries("C:\folder");
    archive.Save("folder.7z");
}

CreateEntry(çubuk, FileInfo, bool, SevenZipEntrySettings)

Arşiv içinde tek bir giriş oluşturun.

public SevenZipArchiveEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)

Parameters

name string

Giriş Adı

fileInfo FileInfo

Dosya metadata sıkıştırılmalıdır.

openImmediately bool

Gerçek şu ki, dosyayı hemen açtığınızda, aksi takdirde dosyayı arşiv kaydında açın.

newEntrySettings SevenZipEntrySettings

Aspose.Zip.SevenZip.SevenZipArchiveEntry öğesini eklemek için kullanılan sıkıştırma ve şifreleme ayarları.

Returns

SevenZipArchiveEntry

7 Zip girişi.

Examples

Arşivleri farklı şifrelerle şifrelenmiş girişlerle birleştirin.

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    FileInfo fi1 = new FileInfo("data1.bin");
    FileInfo fi2 = new FileInfo("data2.bin");
    FileInfo fi3 = new FileInfo("data3.bin");
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("entry1.bin", fi1, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test1")));
        archive.CreateEntry("entry2.bin", fi2, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test2")));
        archive.CreateEntry("entry3.bin", fi3, false, new SevenZipEntrySettings(new SevenZipStoreCompressionSettings(), new SevenZipAESEncryptionSettings("test3")));
        archive.Save(sevenZipFile);
    }
}

Remarks

Parametrelerde belirtilen dosya adı yalnızca giriş adı içinde ayarlanır.

Dosya parametrelerle hemen açılırsa, arşiv kaydedilene kadar kilitlenir.

Exceptions

UnauthorizedAccessException

fileInfo’ is read-only or is a directory.

DirectoryNotFoundException

Belirlenmiş yol geçersizdir, örneğin haritalmamış bir sürücü üzerinde olması.

IOException

Dosya zaten açıktır.

CreateEntry(akım, akım, SevenZipEntrySettings, FileSystemInfo)

Arşiv içinde tek bir giriş oluşturun.

public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings, FileSystemInfo fileInfo)

Parameters

name string

Giriş Adı

source Stream

Giriş için giriş akışı.

newEntrySettings SevenZipEntrySettings

Aspose.Zip.SevenZip.SevenZipArchiveEntry öğesini eklemek için kullanılan sıkıştırma ve şifreleme ayarları.

fileInfo FileSystemInfo

Dosya veya klasör metadata sıkıştırılmalıdır.

Returns

SevenZipArchiveEntry

SevenZip girişi.

Examples

Arşivleri LZMA2 sıkıştırılmış şifreli giriş ile birleştirin.

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    using (var archive = new SevenZipArchive())
    {
        archive.CreateEntry("entry1.bin", new MemoryStream(new byte[] {0x00, 0xFF}), new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(), new SevenZipAESEncryptionSettings("test1")), new FileInfo("data1.bin")); 
        archive.Save(sevenZipFile);
    }
}

Remarks

Parametrelerde belirtilen dosya adı yalnızca giriş adı içinde ayarlanır.

Eğer giriş bir dizin ise System.IO.DirectoryInfo adresine başvurabilirsiniz.

Exceptions

InvalidOperationException

Her ikisi de source’ ve fileInfo’ sıfır veya source’ sıfır ve fileInfo’ dizin için geçerlidir.

CreateEntry(String, Akış, SevenZipEntrySettings)

Arşiv içinde tek bir giriş oluşturun.

public SevenZipArchiveEntry CreateEntry(string name, Stream source, SevenZipEntrySettings newEntrySettings = null)

Parameters

name string

Giriş Adı

source Stream

Giriş için giriş akışı.

newEntrySettings SevenZipEntrySettings

Aspose.Zip.SevenZip.SevenZipArchiveEntry öğesini eklemek için kullanılan sıkıştırma ve şifreleme ayarları.

Returns

SevenZipArchiveEntry

Zip giriş noktası.

Examples

LZMA2 kompresyon ve şifreleme ile 7z arşivi oluşturun.

using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings(), new SevenZipAESEncryptionSettings("p@s$"))))
{
    archive.CreateEntry("data.bin", new MemoryStream(new byte[] {0x00, 0xFF} ));
    archive.Save("archive.7z");
}

CreateEntry(çubuk, çubuk, bool, SevenZipEntrySettings)

Arşiv içinde tek bir giriş oluşturun.

public SevenZipArchiveEntry CreateEntry(string name, string path, bool openImmediately = false, SevenZipEntrySettings newEntrySettings = null)

Parameters

name string

Giriş Adı

path string

Yeni dosyanın tam olarak nitelikli adı veya sıkıştırılacak ilgili dosya adı.

openImmediately bool

Gerçek şu ki, dosyayı hemen açtığınızda, aksi takdirde dosyayı arşiv kaydında açın.

newEntrySettings SevenZipEntrySettings

Aspose.Zip.SevenZip.SevenZipArchiveEntry öğesini eklemek için kullanılan sıkıştırma ve şifreleme ayarları.

Returns

SevenZipArchiveEntry

Zip giriş noktası.

Examples

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
    using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMA2CompressionSettings())))
    {
        archive.CreateEntry("data.bin", "file.dat");
        archive.Save(sevenZipFile);
    }
}

Remarks

Parametrelerde belirtilen dosya adı yalnızca giriş adı içinde ayarlanır.

Dosya parametrelerle hemen açılırsa, arşiv kaydedilene kadar kilitlenir.

Exceptions

ArgumentNullException

path’ is null.

SecurityException

Müşteri, gerekli izinleri almamaktadır.

ArgumentException

path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.

UnauthorizedAccessException

path" dosyasına erişim reddedilir.

PathTooLongException

Belirlenen path’, dosya adı, ya da her ikisi de sistem tarafından tanımlanan maksimum uzunluğu aşmaktadır. Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.

NotSupportedException

path’daki dosya, satırın ortasında bir sütun (:) içerir.

Dispose()

Yönetilmemiş kaynakların serbest bırakılması, serbest bırakılması veya yeniden düzenlenmesi ile ilişkili uygulama tanımlanmış görevleri yerine getirir.

public void Dispose()

Dispose(bool)

Yönetilmemiş kaynakların serbest bırakılması, serbest bırakılması veya yeniden düzenlenmesi ile ilişkili uygulama tanımlanmış görevleri yerine getirir.

protected virtual void Dispose(bool disposing)

Parameters

disposing bool

Yönetilen kaynakların dağıtılması gerekmektedir.

ExtractToDirectory(String ve String)

Arşivdeki tüm dosyaları sağlanan dizine çıkarır.

public void ExtractToDirectory(string destinationDirectory, string password = null)

Parameters

destinationDirectory string

Çekilen dosyaları yerleştirmek için dizine giden yol.

password string

İçerik şifreleme için seçmeli şifreleme.

Examples

using (var archive = new SevenZipArchive("archive.7z")) 
{ 
   archive.ExtractToDirectory("C:\extracted");
}

Remarks

Eğer katalog yoksa, oluşturulacaktır.

Sadece içerik şifreleme için kullanılır. dosya isimleri şifrelenirse Aspose.Zip.SevenZop.7ZapArchive.#ctor(System.String,Systems. String) veya __ WL51.Zup.seven Zip Archiv.

Exceptions

ArgumentNullException

destinationDirectory’ is null.

PathTooLongException

Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.

SecurityException

Çağrıcı, mevcut dizinlere erişmek için gerekli izinlere sahip değildir.

NotSupportedException

Eğer dizin yoksa, yol bir sürücü etiketinin bir parçası olmayan bir kolon karakterini (:) içerir (“C:”).

ArgumentException

destinationDirectory’ is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters by using the System.IO.Path.GetInvalidPathChars method. -or- path is prefixed with, or contains, only a colon character (:).

IOException

Yol tarafından belirtilen dizin bir dosyadır. -or- Ağ adı bilinmemektedir.

InvalidDataException

Arşiv bozulmuştur.

Save(Stream)

7z arşivini sağlanan akışa kaydeder.

public void Save(Stream output)

Parameters

output Stream

Amaç akışı.

Examples

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
  using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
  {
    using (var archive = new SevenZipArchive())
    {
      archive.CreateEntry("data", source);
      archive.Save(sevenZipFile);
    }
  }
}

Remarks

arama yapılmalıdır.

Exceptions

ArgumentException

output’ does not support seeking.

ArgumentNullException

output’ is null.

InvalidOperationException

Encoder verileri sıkıştırmayı başaramadı.

Save(Sırt)

Arşivleri sağlanan bir hedef dosyasına kaydeder.

public void Save(string destinationFileName)

Parameters

destinationFileName string

Dosya adı belirlenmiş bir dosyaya işaret ederse, yeniden yazılacaktır.

Examples

using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
   using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMACompressionSettings())))
   {
      archive.CreateEntry("data", source);
      archive.Save("archive.7z");
   }
}

Remarks

Bir arşivi yüklendiği gibi aynı yoldan kaydetmek mümkündür. ancak, bu yaklaşım geçici bir dosyaya kopyalama kullanır çünkü tavsiye edilmez.

Exceptions

ArgumentNullException

destinationFileName’ is null.

SecurityException

Müşteri, gerekli izinleri almamaktadır.

ArgumentException

destinationFileName’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.

UnauthorizedAccessException

destinationFileName’ dosyasına erişim reddedilir.

PathTooLongException

Belirlenen destinationFileName’, dosya adı, ya da her ikisi de sistem tarafından belirlenen maksimum uzunluğu aşmaktadır. Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.

NotSupportedException

destinationFileName’ dosyası, satırın ortasında bir sütun (:) içerir.

SaveSplit(Çerçeve, SplitSevenZipArchiveSaveOptions)

Çeşitli arşivleri sağlanan hedef dizinine kaydeder.

public void SaveSplit(string destinationDirectory, SplitSevenZipArchiveSaveOptions options)

Parameters

destinationDirectory string

Arşiv segmentlerinin oluşturulacağı dizinlere giden yol.

options SplitSevenZipArchiveSaveOptions

Arşiv kaydetme seçenekleri, dosya adı da dahil.

Examples

using (SevenZipArchive archive = new SevenZipArchive())
{
    archive.CreateEntry("entry.bin", "data.bin");
    archive.SaveSplit(@"C:\Folder",  new SplitSevenZipArchiveSaveOptions("volume", 65536));
}

Remarks

Bu yöntem birkaç () dosyayı filename.7z.001, filename.7z.002, …, filename.7z.(n) oluşturur.

Mevcut arşivleri çok boyutlu hale getiremez.

Exceptions

InvalidOperationException

Bu arşiv mevcut kaynaktan açıldı.

ArgumentNullException

destinationDirectory’ is null.

SecurityException

Çağrıcı, dizinlere erişmek için gerekli izinlere sahip değildir.

ArgumentException

destinationDirectory’ contains invalid characters such as “, >, <, or |.

PathTooLongException

Belirlenen yol, sistem tarafından belirlenen maksimum uzunluğu aşmaktadır.

 Türkçe