Class XarArchive

Class XarArchive

Namespace: Aspose.Zip.Xar
Assembly: Aspose.Zip.dll (25.1.0)

Ta klasa reprezentuje plik archiwum xar.

public class XarArchive : IArchive, IDisposable

Dziedziczenie

objectXarArchive

Implementuje

IArchive, IDisposable

Członkowie dziedziczeni

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

Konstruktory

XarArchive(XarCompressionSettings)

Inicjalizuje nową instancję klasy Aspose.Zip.Xar.XarArchive.

public XarArchive(XarCompressionSettings defaultCompressionSettings = null)

Parametry

defaultCompressionSettings XarCompressionSettings

Domyślne ustawienia kompresji, stosowane do wszystkich wpisów archiwum.

Przykłady

Przykład poniżej pokazuje, jak skompresować plik.

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

XarArchive(Stream, XarLoadOptions)

Inicjalizuje nową instancję klasy Aspose.Zip.Xar.XarArchive i tworzy listę wpisów, które można wyodrębnić z archiwum.

public XarArchive(Stream sourceStream, XarLoadOptions loadOptions = null)

Parametry

sourceStream Stream

Źródło archiwum. Musi być możliwe do przeszukiwania.

loadOptions XarLoadOptions

Opcje do załadowania archiwum.

Przykłady

Przykład poniżej pokazuje, jak wyodrębnić wszystkie wpisy do katalogu.

using (var archive = new XarArchive(File.OpenRead("archive.xar")))
{
   archive.ExtractToDirectory("C:\\extracted");
}

Uwagi

Ten konstruktor nie rozpakowuje żadnego wpisu. Zobacz metodę Aspose.Zip.Xar.XarFileEntry.Open, aby rozpakować.

Wyjątki

ArgumentNullException

sourceStream jest null.

ArgumentException

sourceStream nie jest możliwe do przeszukiwania.

InvalidDataException

sourceStream nie jest prawidłowym archiwum xar.

XarArchive(string, XarLoadOptions)

Inicjalizuje nową instancję klasy Aspose.Zip.Xar.XarArchive i tworzy listę wpisów, które można wyodrębnić z archiwum.

public XarArchive(string path, XarLoadOptions loadOptions = null)

Parametry

path string

Ścieżka do pliku archiwum.

loadOptions XarLoadOptions

Opcje do załadowania archiwum.

Przykłady

Przykład poniżej pokazuje, jak wyodrębnić wszystkie wpisy do katalogu.

using (var archive = new XarArchive("archive.xar")) 
{
   archive.ExtractToDirectory("C:\\extracted");
}

Uwagi

Ten konstruktor nie rozpakowuje żadnego wpisu. Zobacz metodę Aspose.Zip.Xar.XarFileEntry.Open, aby rozpakować.

Wyjątki

ArgumentNullException

path jest null.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu.

ArgumentException

path jest pusty, zawiera tylko białe znaki lub zawiera nieprawidłowe znaki.

UnauthorizedAccessException

Dostęp do pliku path jest zabroniony.

PathTooLongException

Określona path, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład na platformach opartych na Windows, ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków.

NotSupportedException

Plik w path zawiera dwukropek (:) w środku ciągu.

FileNotFoundException

Plik nie został znaleziony.

DirectoryNotFoundException

Określona ścieżka jest nieprawidłowa, na przykład znajduje się na niezmapowanym dysku.

IOException

Plik jest już otwarty.

InvalidDataException

Plik w path nie jest prawidłowym archiwum xar.

Właściwości

Entries

Zwraca wpisy typu Aspose.Zip.Xar.XarEntry, które stanowią archiwum.

public IEnumerable<xarentry> Entries { get; }

Wartość właściwości

IEnumerable<XarEntry&gt;

Metody

CreateEntries(string, bool, XarCompressionSettings)

Dodaje do archiwum wszystkie pliki i katalogi rekurencyjnie w danym katalogu.

public XarArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true, XarCompressionSettings compressionSettings = null)

Parametry

sourceDirectory string

Katalog do skompresowania.

includeRootDirectory bool

Określa, czy dołączyć sam katalog główny, czy nie.

compressionSettings XarCompressionSettings

Ustawienia kompresji używane dla dodanych elementów Aspose.Zip.Xar.XarEntry.

Zwraca

XarArchive

Instancja wpisu Xar.

Przykłady

using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
{
    using (var archive = new XarArchive())
    {
        archive.CreateEntries(@"C:\folder", false);
        archive.Save(xarFile);
    }
}

Wyjątki

ArgumentNullException

sourceDirectory jest null.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu do sourceDirectory.

ArgumentException

sourceDirectory zawiera nieprawidłowe znaki, takie jak “, <, > lub |.

PathTooLongException

Określona ścieżka, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład na platformach opartych na Windows, ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków. Określona ścieżka, nazwa pliku lub obie są zbyt długie.

IOException

sourceDirectory odnosi się do pliku, a nie katalogu.

CreateEntries(DirectoryInfo, bool, XarCompressionSettings)

Dodaje do archiwum wszystkie pliki i katalogi rekurencyjnie w danym katalogu.

public XarArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true, XarCompressionSettings compressionSettings = null)

Parametry

directory DirectoryInfo

Katalog do skompresowania.

includeRootDirectory bool

Określa, czy dołączyć sam katalog główny, czy nie.

compressionSettings XarCompressionSettings

Ustawienia kompresji używane dla dodanych elementów Aspose.Zip.Xar.XarEntry.

Zwraca

XarArchive

Instancja wpisu Xar.

Przykłady

using (FileStream xarFile = File.Open("archive.xar", FileMode.Create))
{
    using (var archive = new XarArchive())
    {
        archive.CreateEntries(new DirectoryInfo(@"C:\folder"), false);
        archive.Save(xarFile);
    }
}

Wyjątki

ArgumentNullException

directory jest null.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu do directory.

IOException

directory odnosi się do pliku, a nie katalogu.

CreateEntry(string, FileInfo, bool, XarCompressionSettings)

Tworzy pojedynczy wpis w archiwum.

public XarEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false, XarCompressionSettings compressionSettings = null)

Parametry

name string

Nazwa wpisu.

fileInfo FileInfo

Metadane pliku lub folderu do skompresowania.

openImmediately bool

Prawda, jeśli otworzyć plik natychmiast, w przeciwnym razie otwórz plik przy zapisywaniu archiwum.

compressionSettings XarCompressionSettings

Ustawienia kompresji używane dla dodanego elementu Aspose.Zip.Xar.XarEntry.

Zwraca

XarEntry

Instancja wpisu Xar.

Przykłady

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

Uwagi

Jeśli plik jest otwierany natychmiast z parametrem openImmediately, zostaje zablokowany do czasu zwolnienia archiwum.

Wyjątki

ArgumentNullException

name jest null.

ArgumentException

name jest pusty.

ArgumentNullException

fileInfo jest null.

CreateEntry(string, string, bool, XarCompressionSettings)

Tworzy pojedynczy wpis w archiwum.

public XarEntry CreateEntry(string name, string sourcePath, bool openImmediately = false, XarCompressionSettings compressionSettings = null)

Parametry

name string

Nazwa wpisu.

sourcePath string

Ścieżka do pliku do skompresowania.

openImmediately bool

Prawda, jeśli otworzyć plik natychmiast, w przeciwnym razie otwórz plik przy zapisywaniu archiwum.

compressionSettings XarCompressionSettings

Ustawienia kompresji używane dla dodanego elementu Aspose.Zip.Xar.XarEntry.

Zwraca

XarEntry

Instancja wpisu Xar.

Przykłady

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

Uwagi

Nazwa wpisu jest ustawiana wyłącznie w parametrze name. Nazwa pliku podana w parametrze sourcePath nie wpływa na nazwę wpisu.

Jeśli plik jest otwierany natychmiast z parametrem openImmediately, zostaje zablokowany do czasu zwolnienia archiwum.

Wyjątki

ArgumentNullException

sourcePath jest null.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu.

ArgumentException

sourcePath jest pusty, zawiera tylko białe znaki lub zawiera nieprawidłowe znaki. - lub - Nazwa pliku, jako część name, przekracza 100 symboli.

UnauthorizedAccessException

Dostęp do pliku sourcePath jest zabroniony.

PathTooLongException

Określona sourcePath, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład na platformach opartych na Windows, ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków. - lub - name jest zbyt długie dla xar.

NotSupportedException

Plik w sourcePath zawiera dwukropek (:) w środku ciągu.

InvalidOperationException

Nie można modyfikować archiwum xar.

CreateEntry(string, Stream, XarCompressionSettings)

Tworzy pojedynczy wpis w archiwum.

public XarEntry CreateEntry(string name, Stream source, XarCompressionSettings compressionSettings = null)

Parametry

name string

Nazwa wpisu.

source Stream

Strumień wejściowy dla wpisu.

compressionSettings XarCompressionSettings

Ustawienia kompresji używane dla dodanego elementu Aspose.Zip.Xar.XarEntry.

Zwraca

XarEntry

Instancja wpisu Xar.

Przykłady

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

Wyjątki

ArgumentNullException

name jest null.

ArgumentNullException

source jest null.

ArgumentException

name jest pusty.

InvalidOperationException

Nie można modyfikować archiwum xar.

DeleteEntry(XarEntry)

Usuwa pierwsze wystąpienie konkretnego wpisu z listy wpisów.

public XarArchive DeleteEntry(XarEntry entry)

Parametry

entry XarEntry

Wpis do usunięcia z listy wpisów.

Zwraca

XarArchive

Instancja wpisu Xar.

Przykłady

Oto jak możesz usunąć wszystkie wpisy z wyjątkiem ostatniego:

using (var archive = new XarArchive("archive.xar"))
{
    while (archive.Entries.Count &gt; 1)
        archive.DeleteEntry(archive.Entries.FirstOrDefault());
    archive.Save(outputXarFile);
}

Wyjątki

ArgumentNullException

entry jest null.

Dispose()

Wykonuje zadania zdefiniowane przez aplikację związane z zwalnianiem, uwalnianiem lub resetowaniem niezarządzanych zasobów.

public void Dispose()

Dispose(bool)

Wykonuje zadania zdefiniowane przez aplikację związane z zwalnianiem, uwalnianiem lub resetowaniem niezarządzanych zasobów.

protected virtual void Dispose(bool disposing)

Parametry

disposing bool

Określa, czy zasoby zarządzane powinny być zwolnione.

ExtractToDirectory(string)

Wyodrębnia wszystkie pliki w archiwum do podanego katalogu.

public void ExtractToDirectory(string destinationDirectory)

Parametry

destinationDirectory string

Ścieżka do katalogu, w którym mają być umieszczone wyodrębnione pliki.

Przykłady

using (var archive = new XarArchive("archive.xar")) 
{
   archive.ExtractToDirectory("C:\\extracted");
}

Uwagi

Jeśli katalog nie istnieje, zostanie utworzony.

Wyjątki

ArgumentNullException

path jest null

PathTooLongException

Określona ścieżka, nazwa pliku lub obie przekraczają maksymalną długość zdefiniowaną przez system. Na przykład na platformach opartych na Windows, ścieżki muszą mieć mniej niż 248 znaków, a nazwy plików muszą mieć mniej niż 260 znaków.

SecurityException

Wywołujący nie ma wymaganych uprawnień do dostępu do istniejącego katalogu.

NotSupportedException

Jeśli katalog nie istnieje, ścieżka zawiera znak dwukropka (:) który nie jest częścią etykiety dysku (“C:").

ArgumentException

Ścieżka jest ciągiem o zerowej długości, zawiera tylko białe znaki lub zawiera jeden lub więcej nieprawidłowych znaków. Możesz zapytać o nieprawidłowe znaki, używając metody System.IO.Path.GetInvalidPathChars. - lub - ścieżka jest prefiksowana lub zawiera tylko znak dwukropka (:).

IOException

Katalog określony przez ścieżkę jest plikiem. - lub - Nazwa sieci nie jest znana.

InvalidDataException

Archiwum jest uszkodzone.

Save(string, XarSaveOptions)

Zapisuje archiwum do podanego pliku docelowego.

public void Save(string destinationFileName, XarSaveOptions saveOptions = null)

Parametry

destinationFileName string

Ścieżka archiwum, które ma zostać utworzone. Jeśli określona nazwa pliku wskazuje na istniejący plik, zostanie on nadpisany.

saveOptions XarSaveOptions

Opcje do zapisania archiwum xar.

Wyjątki

ArgumentNullException

destinationFileName jest null.

InvalidOperationException

Nie można modyfikować archiwum xar.

Save(Stream, XarSaveOptions)

Zapisuje archiwum do podanego strumienia.

public void Save(Stream output, XarSaveOptions saveOptions = null)

Parametry

output Stream

Strumień docelowy.

saveOptions XarSaveOptions

Opcje do zapisania archiwum xar.

Wyjątki

ArgumentNullException

output jest null.

ArgumentException

output nie jest zapisywalny/odczytywalny lub nie jest możliwe do przeszukiwania.

InvalidOperationException

Nie można modyfikować archiwum xar.

 Polski