Class SharArchive

Class SharArchive

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

Bu sınıf bir arşiv dosyası temsil eder.

public class SharArchive : IDisposable

Inheritance

object SharArchive

Implements

IDisposable

mirasçı üyeleri

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

Constructors

SharArchive()

Aspose.Zip.Shar.SharArchive sınıfının yeni bir örneğini başlatır.

public SharArchive()

Examples

Aşağıdaki örnek, bir dosyayı nasıl sıkıştırılacağını gösterir.

using (var archive = new SharArchive())
{
    archive.CreateEntry("first.bin", "data.bin");
    archive.Save("archive.shar");
}

SharArchive(Sırt)

Aspose.Zip.Shar.SharArchive sınıfının dekompresyon için hazırlanan yeni bir örneği başlatır.

public SharArchive(string path)

Parameters

path string

Arşiv kaynağına giden yol.

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.

Properties

Entries

Arşiv oluşturan Aspose.Zip.Shar.SharEntry tipi girişleri alır.

public ReadOnlyCollection<sharentry> Entries { get; }

Mülkiyet Değer

ReadOnlyCollection &lt için; SharEntry >

Methods

CreateEntries(Çerçeve , Bool)

Tüm dosyaları ve dizinleri verilen dizinlerde tekrar tekrar dosyaya eklemek.

public SharArchive 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

SharArchive

Giriş Adayları.

Examples

using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
    using (var archive = new SharArchive())
    {
        archive.CreateEntries("C:\folder", false);
        archive.Save(sharFile);
    }
}

Exceptions

ArgumentNullException

sourceDirectory’ is null.

SecurityException

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

ArgumentException

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

PathTooLongException

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

IOException

sourceDirectory’ stands for a file, not for a directory.

CreateEntries(Etiket Arşivi: bool)

Tüm dosyaları ve dizinleri verilen dizinlerde tekrar tekrar dosyaya eklemek.

public SharArchive 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

SharArchive

Giriş Adayları.

Examples

using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
    using (var archive = new SharArchive())
    {
        archive.CreateEntries(new DirectoryInfo("C:\folder"), false);
        archive.Save(sharFile);
    }
}

Exceptions

ArgumentNullException

directory’ is null.

SecurityException

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

IOException

directory’ stands for a file, not for a directory.

CreateEntry(Çerçeve, FileInfo, Bool)

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

public SharEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false)

Parameters

name string

Giriş Adı

fileInfo FileInfo

Dosya veya klasör 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.

Returns

SharEntry

Giriş Adayları.

Examples

FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new SharArchive())
{
    archive.CreateEntry("test.bin", fileInfo);
    archive.Save("archive.shar");
}

Remarks

Dosya parametrelerle hemen açılırsa, arşiv kaldırılana kadar kilitlenir.

Exceptions

ArgumentNullException

name’ is null.

ArgumentException

name’ is empty.

ArgumentNullException

fileInfo’ is null.

CreateEntry(String, String ve Bool)

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

public SharEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)

Parameters

name string

Giriş Adı

sourcePath string

Dosyayı sıkıştırmanın yolları.

openImmediately bool

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

Returns

SharEntry

Giriş Adayları.

Examples

using (var archive = new SharArchive())
{
    archive.CreateEntry("first.bin", "data.bin");
    archive.Save("archive.shar");
}

Remarks

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

Dosya parametrelerle hemen açılırsa, arşiv kaldırılana kadar kilitlenir.

Exceptions

ArgumentNullException

sourcePath’ is null.

SecurityException

Müşteri, gerekli izinleri almamaktadır.

ArgumentException

sourcePath’ boştur, yalnızca beyaz alanlar içerir veya geçersiz karakterler içerir. - veya - Dosya adı, name’nin bir parçası olarak, 100’ü aşar.

UnauthorizedAccessException

sourcePath’ dosyasına erişim reddedilir.

PathTooLongException

Belirlenen sourcePath’, 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. - ya da - name’ şiddet için çok uzun.

NotSupportedException

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

CreateEntry(akış, akış)

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

public SharEntry CreateEntry(string name, Stream source)

Parameters

name string

Giriş Adı

source Stream

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

Returns

SharEntry

Giriş Adayları.

Examples

using (var archive = new SharArchive())
{
    archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
    archive.Save("archive.shar");
}

Exceptions

ArgumentNullException

name’ is null.

ArgumentNullException

source’ is null.

ArgumentException

name’ is empty.

DeleteEntry(SharEntry)

Bir giriş listesinden belirli bir girişin ilk ortaya çıkmasını kaldırır.

public SharArchive DeleteEntry(SharEntry entry)

Parameters

entry SharEntry

Giriş listesinden kaldırılması gereken giriş.

Returns

SharArchive

Giriş Adayları.

Examples

İşte son yazıyı hariç tüm yazıları nasıl kaldırabilirsiniz:

using (var archive = new SharArchive("archive.shar"))
{
    while (archive.Entries.Count &gt; 1)
        archive.DeleteEntry(archive.Entries[0]);
    archive.Save(outputSharFile);
}

Exceptions

ArgumentNullException

entry’ is null.

DeleteEntry(int ile)

Giriş listesinden indekslere göre kaldırılır.

public SharArchive DeleteEntry(int entryIndex)

Parameters

entryIndex int

Sıfır tabanlı giriş indeksi kaldırılmalıdır.

Returns

SharArchive

Giriş ile arşiv kaldırıldı.

Examples

using (var archive = new SharArchive("two_files.shar"))
{
    archive.DeleteEntry(0);
    archive.Save("single_file.shar");
}

Exceptions

ArgumentOutOfRangeException

entryIndex’ is less than 0.-or- entryIndex’ is equal to or greater than ‘Entries’ count.

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.

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

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 (var archive = new SharArchive())
{
    archive.CreateEntry("entry1", "data.bin");        
    archive.Save("archive.shar");
}

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

ArgumentException

destinationFileName’ is a zero-length string, contains only white space, or contains one or more invalid characters as defined by System.IO.Path.InvalidPathChars.

ArgumentNullException

destinationFileName’ is null.

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.

DirectoryNotFoundException

Belirlenen destinationFileName’ geçersizdir (örneğin, karton olmayan bir sürücüde bulunur).

IOException

Dosyayı açtığınızda bir I/O hatası meydana geldi.

UnauthorizedAccessException

destinationFileName’ specified a file that is read-only and access is not Read.-or- path specified a directory.-or- The caller does not have the required permission.

NotSupportedException

destinationFileName’ is in an invalid format.

FileNotFoundException

Dosya bulunamadı.

Save(Stream)

Arşivleri sağlanan akışa kaydeder.

public void Save(Stream output)

Parameters

output Stream

Amaç akışı.

Examples

using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
    using (var archive = new SharArchive())
    {
        archive.CreateEntry("entry1", "data.bin");        
        archive.Save(sharFile);
    }
}

Remarks

Yazılabilir olması gerekir.

Exceptions

ArgumentNullException

output’ is null.

ArgumentException

output’ is not writable. - or - output’ is the same stream we extract from.

 Türkçe