Class SharArchive
Namespace: Aspose.Zip.Shar
Assembly: Aspose.Zip.dll (25.1.0)
Bu sınıf, shar arşiv dosyasını temsil eder.
public class SharArchive : IDisposable
Miras
Uygulamalar
Miras Alınan Üyeler
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Yapıcılar
SharArchive()
Aspose.Zip.Shar.SharArchive sınıfının yeni bir örneğini başlatır.
public SharArchive()
Örnekler
Aşağıdaki örnek, bir dosyayı nasıl sıkıştıracağınızı göstermektedir.
using (var archive = new SharArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.shar");
}
SharArchive(string)
Açma işlemi için hazırlanan Aspose.Zip.Shar.SharArchive sınıfının yeni bir örneğini başlatır.
public SharArchive(string path)
Parametreler
path
string
Arşivin kaynağının yolu.
İstisnalar
path
null.
Arayanın erişim için gerekli izni yok.
path
boş, yalnızca boşluk içeriyor veya geçersiz karakterler içeriyor.
path
dosyasına erişim reddedildi.
Belirtilen path
, dosya adı veya her ikisi sistem tanımlı maksimum uzunluğu aşıyor. Örneğin, Windows tabanlı platformlarda yollar 248 karakterden kısa olmalı ve dosya adları 260 karakterden kısa olmalıdır.
path
içinde bir iki nokta (:) içeriyor.
Dosya bulunamadı.
Belirtilen yol geçersiz, örneğin, haritalanmamış bir sürücüde bulunuyor.
Dosya zaten açık.
Özellikler
Entries
Arşivi oluşturan Aspose.Zip.Shar.SharEntry türündeki girişleri alır.
public ReadOnlyCollection<sharentry> Entries { get; }
Özellik Değeri
ReadOnlyCollection<SharEntry>
Metodlar
CreateEntries(string, bool)
Verilen dizindeki tüm dosya ve dizinleri özyinelemeli olarak arşive ekler.
public SharArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)
Parametreler
sourceDirectory
string
Sıkıştırılacak dizin.
includeRootDirectory
bool
Kök dizinini dahil edip etmeyeceğini belirtir.
Dönüş Değeri
Shar girişi örneği.
Örnekler
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntries("C:\folder", false);
archive.Save(sharFile);
}
}
İstisnalar
sourceDirectory
null.
Arayanın sourceDirectory
erişimi için gerekli izni yok.
sourceDirectory
geçersiz karakterler içeriyor, örneğin “, <, > veya |.
Belirtilen yol, dosya adı veya her ikisi sistem tanımlı maksimum uzunluğu aşıyor. Örneğin, Windows tabanlı platformlarda yollar 248 karakterden kısa olmalı ve dosya adları 260 karakterden kısa olmalıdır. Belirtilen yol, dosya adı veya her ikisi çok uzun.
sourceDirectory
bir dosyayı temsil ediyor, dizin değil.
CreateEntries(DirectoryInfo, bool)
Verilen dizindeki tüm dosya ve dizinleri özyinelemeli olarak arşive ekler.
public SharArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)
Parametreler
directory
DirectoryInfo
Sıkıştırılacak dizin.
includeRootDirectory
bool
Kök dizinini dahil edip etmeyeceğini belirtir.
Dönüş Değeri
Shar girişi örneği.
Örnekler
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntries(new DirectoryInfo("C:\folder"), false);
archive.Save(sharFile);
}
}
İstisnalar
directory
null.
Arayanın directory
erişimi için gerekli izni yok.
directory
bir dosyayı temsil ediyor, dizin değil.
CreateEntry(string, FileInfo, bool)
Arşiv içinde tek bir giriş oluşturur.
public SharEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false)
Parametreler
name
string
Girişin adı.
fileInfo
FileInfo
Sıkıştırılacak dosya veya klasörün meta verileri.
openImmediately
bool
Dosyayı hemen açmak için true, aksi takdirde dosya arşiv kaydedilirken açılır.
Dönüş Değeri
Shar girişi örneği.
Örnekler
FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new SharArchive())
{
archive.CreateEntry("test.bin", fileInfo);
archive.Save("archive.shar");
}
Açıklamalar
Dosya openImmediately
parametresi ile hemen açılırsa, arşiv serbest bırakılana kadar engellenir.
İstisnalar
name
null.
name
boş.
fileInfo
null.
CreateEntry(string, string, bool)
Arşiv içinde tek bir giriş oluşturur.
public SharEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)
Parametreler
name
string
Girişin adı.
sourcePath
string
Sıkıştırılacak dosyanın yolu.
openImmediately
bool
Dosyayı hemen açmak için true, aksi takdirde dosya arşiv kaydedilirken açılır.
Dönüş Değeri
Shar girişi örneği.
Örnekler
using (var archive = new SharArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.shar");
}
Açıklamalar
Giriş adı yalnızca name
parametresi içinde ayarlanır. sourcePath
parametresinde sağlanan dosya adı, giriş adını etkilemez.
Dosya openImmediately
parametresi ile hemen açılırsa, arşiv serbest bırakılana kadar engellenir.
İstisnalar
sourcePath
null.
Arayanın erişim için gerekli izni yok.
sourcePath
boş, yalnızca boşluk içeriyor veya geçersiz karakterler içeriyor. - veya - Dosya adı, name
parametresinin bir parçası olarak 100 sembolü aşıyor.
sourcePath
dosyasına erişim reddedildi.
Belirtilen sourcePath
, dosya adı veya her ikisi sistem tanımlı maksimum uzunluğu aşıyor. Örneğin, Windows tabanlı platformlarda yollar 248 karakterden kısa olmalı ve dosya adları 260 karakterden kısa olmalıdır. - veya - name
shar için çok uzun.
sourcePath
içinde bir iki nokta (:) içeriyor.
CreateEntry(string, Stream)
Arşiv içinde tek bir giriş oluşturur.
public SharEntry CreateEntry(string name, Stream source)
Parametreler
name
string
Girişin adı.
source
Stream
Giriş için giriş akışı.
Dönüş Değeri
Shar girişi örneği.
Örnekler
using (var archive = new SharArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.shar");
}
İstisnalar
name
null.
source
null.
name
boş.
DeleteEntry(SharEntry)
Girişler listesinden belirli bir girişin ilk örneğini kaldırır.
public SharArchive DeleteEntry(SharEntry entry)
Parametreler
entry
SharEntry
Girişler listesinden kaldırılacak giriş.
Dönüş Değeri
Shar girişi örneği.
Örnekler
İşte sonuncusu hariç tüm girişleri nasıl kaldırabileceğinizi gösteren bir örnek:
using (var archive = new SharArchive("archive.shar"))
{
while (archive.Entries.Count > 1)
archive.DeleteEntry(archive.Entries[0]);
archive.Save(outputSharFile);
}
İstisnalar
entry
null.
DeleteEntry(int)
Girişler listesinden girişin indeksine göre kaldırılmasını sağlar.
public SharArchive DeleteEntry(int entryIndex)
Parametreler
entryIndex
int
Kaldırılacak girişin sıfıra dayalı indeksi.
Dönüş Değeri
Girişi silinmiş arşiv.
Örnekler
using (var archive = new SharArchive("two_files.shar"))
{
archive.DeleteEntry(0);
archive.Save("single_file.shar");
}
İstisnalar
entryIndex
0’dan küçük.-veya- entryIndex
Entries
sayısına eşit veya daha büyük.
Dispose(bool)
Yönetilmeyen kaynakları serbest bırakma, salma veya sıfırlama ile ilişkili uygulama tanımlı görevleri yerine getirir.
protected virtual void Dispose(bool disposing)
Parametreler
disposing
bool
Yönetilen kaynakların serbest bırakılıp bırakılmayacağını belirtir.
Dispose()
Yönetilmeyen kaynakları serbest bırakma, salma veya sıfırlama ile ilişkili uygulama tanımlı görevleri yerine getirir.
public void Dispose()
Save(string)
Arşivi belirtilen hedef dosyaya kaydeder.
public void Save(string destinationFileName)
Parametreler
destinationFileName
string
Oluşturulacak arşivin yolu. Belirtilen dosya adı mevcut bir dosyaya işaret ediyorsa, üzerine yazılacaktır.
Örnekler
using (var archive = new SharArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save("archive.shar");
}
Açıklamalar
Bir arşivi yüklendiği aynı yola kaydetmek mümkündür. Ancak, bu yaklaşım geçici dosya kopyalamayı kullandığı için önerilmez.
İstisnalar
destinationFileName
sıfır uzunluğunda bir dize, yalnızca boşluk içeriyor veya System.IO.Path.InvalidPathChars tarafından tanımlanan bir veya daha fazla geçersiz karakter içeriyor.
destinationFileName
null.
Belirtilen destinationFileName
, dosya adı veya her ikisi sistem tanımlı maksimum uzunluğu aşıyor. Örneğin, Windows tabanlı platformlarda yollar 248 karakterden kısa olmalı ve dosya adları 260 karakterden kısa olmalıdır.
Belirtilen destinationFileName
geçersizdir (örneğin, haritalanmamış bir sürücüde bulunuyor).
Dosya açılırken bir I/O hatası oluştu.
destinationFileName
okunamaz bir dosyayı belirtiyor ve erişim Okuma değil.-veya- belirtilen bir dizini.-veya- Arayanın gerekli izni yok.
destinationFileName
geçersiz bir formatta.
Dosya bulunamadı.
Save(Stream)
Arşivi belirtilen akışa kaydeder.
public void Save(Stream output)
Parametreler
output
Stream
Hedef akış.
Örnekler
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save(sharFile);
}
}
Açıklamalar
output
yazılabilir olmalıdır.
İstisnalar
output
null.
output
yazılabilir değil. - veya - output
çıkarttığımız akışla aynı.