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
Implements
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
sourceStream’ is not seekable.
sourceStream’ is null.
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
path’ is null.
Müşteri, gerekli izinleri almamaktadır.
path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.
path" dosyasına erişim reddedilir.
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.
path’daki dosya, satırın ortasında bir sütun (:) içerir.
Dosya bulunamadı.
Belirlenmiş yol geçersizdir, örneğin haritalmamış bir sürücü üzerinde olması.
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
parts’ is null.
parts’ has no entries.
Müşteri, gerekli izinleri almamaktadır.
Bir dosyaya giden yol boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.
Bir dosyaya erişimi reddedilir.
Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden daha az olmalıdır ve dosya isimleri 260 karakterden daha az olmalıdır.
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 < 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
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
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
directory’ye giden yol geçersizdir, örneğin haritalmamış bir sürücü üzerinde olması gibi.
Ç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
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
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
fileInfo’ is read-only or is a directory.
Belirlenmiş yol geçersizdir, örneğin haritalmamış bir sürücü üzerinde olması.
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
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
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
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
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
path’ is null.
Müşteri, gerekli izinleri almamaktadır.
path’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.
path" dosyasına erişim reddedilir.
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.
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
destinationDirectory’ is null.
Örneğin, Windows tabanlı platformlarda, yollar 248 karakterden az olmalıdır ve dosya isimleri 260 karakterden az olmalıdır.
Çağrıcı, mevcut dizinlere erişmek için gerekli izinlere sahip değildir.
Eğer dizin yoksa, yol bir sürücü etiketinin bir parçası olmayan bir kolon karakterini (:) içerir (“C:”).
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 (:).
Yol tarafından belirtilen dizin bir dosyadır. -or- Ağ adı bilinmemektedir.
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
output’ does not support seeking.
output’ is null.
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
destinationFileName’ is null.
Müşteri, gerekli izinleri almamaktadır.
destinationFileName’ boş, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir.
destinationFileName’ dosyasına erişim reddedilir.
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.
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
Bu arşiv mevcut kaynaktan açıldı.
destinationDirectory’ is null.
Çağrıcı, dizinlere erişmek için gerekli izinlere sahip değildir.
destinationDirectory’ contains invalid characters such as “, >, <, or |.
Belirlenen yol, sistem tarafından belirlenen maksimum uzunluğu aşmaktadır.