Class XarArchive

Class XarArchive

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

Questa classe rappresenta un file di archivio xar.

public class XarArchive : IArchive, IDisposable

Ereditarietà

objectXarArchive

Implementa

IArchive, IDisposable

Membri Ereditati

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

Costruttori

XarArchive(XarCompressionSettings)

Inizializza una nuova istanza della classe Aspose.Zip.Xar.XarArchive.

public XarArchive(XarCompressionSettings defaultCompressionSettings = null)

Parametri

defaultCompressionSettings XarCompressionSettings

Le impostazioni di compressione predefinite, applicate a tutte le voci dell’archivio.

Esempi

Il seguente esempio mostra come comprimere un file.

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

XarArchive(Stream, XarLoadOptions)

Inizializza una nuova istanza della classe Aspose.Zip.Xar.XarArchive e compone un elenco di voci che possono essere estratte dall’archivio.

public XarArchive(Stream sourceStream, XarLoadOptions loadOptions = null)

Parametri

sourceStream Stream

La fonte dell’archivio. Deve essere cercabile.

loadOptions XarLoadOptions

Le opzioni per caricare l’archivio.

Esempi

Il seguente esempio mostra come estrarre tutte le voci in una directory.

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

Osservazioni

Questo costruttore non estrae alcuna voce. Vedi il metodo Aspose.Zip.Xar.XarFileEntry.Open per l’estrazione.

Eccezioni

ArgumentNullException

sourceStream è nullo.

ArgumentException

sourceStream non è cercabile.

InvalidDataException

sourceStream non è un archivio xar valido.

XarArchive(string, XarLoadOptions)

Inizializza una nuova istanza della classe Aspose.Zip.Xar.XarArchive e compone un elenco di voci che possono essere estratte dall’archivio.

public XarArchive(string path, XarLoadOptions loadOptions = null)

Parametri

path string

Il percorso del file di archivio.

loadOptions XarLoadOptions

Le opzioni per caricare l’archivio.

Esempi

Il seguente esempio mostra come estrarre tutte le voci in una directory.

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

Osservazioni

Questo costruttore non estrae alcuna voce. Vedi il metodo Aspose.Zip.Xar.XarFileEntry.Open per l’estrazione.

Eccezioni

ArgumentNullException

path è nullo.

SecurityException

Il chiamante non ha il permesso richiesto per accedere.

ArgumentException

Il path è vuoto, contiene solo spazi bianchi o contiene caratteri non validi.

UnauthorizedAccessException

Accesso al file path negato.

PathTooLongException

Il path, il nome del file, o entrambi superano la lunghezza massima definita dal sistema. Ad esempio, su piattaforme basate su Windows, i percorsi devono essere inferiori a 248 caratteri e i nomi dei file devono essere inferiori a 260 caratteri.

NotSupportedException

Il file in path contiene due punti (:) nel mezzo della stringa.

FileNotFoundException

Il file non è stato trovato.

DirectoryNotFoundException

Il percorso specificato non è valido, ad esempio si trova su un’unità non mappata.

IOException

Il file è già aperto.

InvalidDataException

Il file in path non è un archivio xar valido.

Proprietà

Entries

Ottiene le voci di tipo Aspose.Zip.Xar.XarEntry che costituiscono l’archivio.

public IEnumerable<xarentry> Entries { get; }

Valore della Proprietà

IEnumerable<XarEntry&gt;

Metodi

CreateEntries(string, bool, XarCompressionSettings)

Aggiunge all’archivio tutti i file e le directory ricorsivamente nella directory fornita.

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

Parametri

sourceDirectory string

Directory da comprimere.

includeRootDirectory bool

Indica se includere o meno la directory radice stessa.

compressionSettings XarCompressionSettings

Le impostazioni di compressione utilizzate per gli elementi Aspose.Zip.Xar.XarEntry aggiunti.

Restituisce

XarArchive

Istanza di voce Xar.

Esempi

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

Eccezioni

ArgumentNullException

sourceDirectory è nullo.

SecurityException

Il chiamante non ha il permesso richiesto per accedere a sourceDirectory.

ArgumentException

sourceDirectory contiene caratteri non validi come “, <, > o |.

PathTooLongException

Il percorso specificato, il nome del file o entrambi superano la lunghezza massima definita dal sistema. Ad esempio, su piattaforme basate su Windows, i percorsi devono essere inferiori a 248 caratteri e i nomi dei file devono essere inferiori a 260 caratteri. Il percorso specificato, il nome del file o entrambi sono troppo lunghi.

IOException

sourceDirectory rappresenta un file, non una directory.

CreateEntries(DirectoryInfo, bool, XarCompressionSettings)

Aggiunge all’archivio tutti i file e le directory ricorsivamente nella directory fornita.

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

Parametri

directory DirectoryInfo

Directory da comprimere.

includeRootDirectory bool

Indica se includere o meno la directory radice stessa.

compressionSettings XarCompressionSettings

Le impostazioni di compressione utilizzate per gli elementi Aspose.Zip.Xar.XarEntry aggiunti.

Restituisce

XarArchive

Istanza di voce Xar.

Esempi

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

Eccezioni

ArgumentNullException

directory è nullo.

SecurityException

Il chiamante non ha il permesso richiesto per accedere a directory.

IOException

directory rappresenta un file, non una directory.

CreateEntry(string, FileInfo, bool, XarCompressionSettings)

Crea una singola voce all’interno dell’archivio.

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

Parametri

name string

Il nome della voce.

fileInfo FileInfo

I metadati del file o della cartella da comprimere.

openImmediately bool

Vero se aprire il file immediatamente, altrimenti aprire il file al salvataggio dell’archivio.

compressionSettings XarCompressionSettings

Le impostazioni di compressione utilizzate per l’elemento Aspose.Zip.Xar.XarEntry aggiunto.

Restituisce

XarEntry

Istanza di voce Xar.

Esempi

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

Osservazioni

Se il file viene aperto immediatamente con il parametro openImmediately, rimarrà bloccato fino a quando l'archivio non viene eliminato.

Eccezioni

ArgumentNullException

name è nullo.

ArgumentException

name è vuoto.

ArgumentNullException

fileInfo è nullo.

CreateEntry(string, string, bool, XarCompressionSettings)

Crea una singola voce all’interno dell’archivio.

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

Parametri

name string

Il nome della voce.

sourcePath string

Percorso del file da comprimere.

openImmediately bool

Vero se aprire il file immediatamente, altrimenti aprire il file al salvataggio dell’archivio.

compressionSettings XarCompressionSettings

Le impostazioni di compressione utilizzate per l’elemento Aspose.Zip.Xar.XarEntry aggiunto.

Restituisce

XarEntry

Istanza di voce Xar.

Esempi

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

Osservazioni

Il nome della voce è impostato esclusivamente nel parametro name. Il nome del file fornito nel parametro sourcePath non influisce sul nome della voce.

Se il file viene aperto immediatamente con il parametro openImmediately, rimarrà bloccato fino a quando l'archivio non viene eliminato.

Eccezioni

ArgumentNullException

sourcePath è nullo.

SecurityException

Il chiamante non ha il permesso richiesto per accedere.

ArgumentException

Il sourcePath è vuoto, contiene solo spazi bianchi o contiene caratteri non validi. - o - Il nome del file, come parte del name, supera i 100 simboli.

UnauthorizedAccessException

Accesso al file sourcePath negato.

PathTooLongException

Il sourcePath, il nome del file, o entrambi superano la lunghezza massima definita dal sistema. Ad esempio, su piattaforme basate su Windows, i percorsi devono essere inferiori a 248 caratteri e i nomi dei file devono essere inferiori a 260 caratteri. - o - name è troppo lungo per xar.

NotSupportedException

Il file in sourcePath contiene due punti (:) nel mezzo della stringa.

InvalidOperationException

Impossibile modificare l’archivio xar.

CreateEntry(string, Stream, XarCompressionSettings)

Crea una singola voce all’interno dell’archivio.

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

Parametri

name string

Il nome della voce.

source Stream

Lo stream di input per la voce.

compressionSettings XarCompressionSettings

Le impostazioni di compressione utilizzate per l’elemento Aspose.Zip.Xar.XarEntry aggiunto.

Restituisce

XarEntry

Istanza di voce Xar.

Esempi

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

Eccezioni

ArgumentNullException

name è nullo.

ArgumentNullException

source è nullo.

ArgumentException

name è vuoto.

InvalidOperationException

Impossibile modificare l’archivio xar.

DeleteEntry(XarEntry)

Rimuove la prima occorrenza di una voce specifica dall’elenco delle voci.

public XarArchive DeleteEntry(XarEntry entry)

Parametri

entry XarEntry

La voce da rimuovere dall’elenco delle voci.

Restituisce

XarArchive

Istanza di voce Xar.

Esempi

Ecco come puoi rimuovere tutte le voci tranne l'ultima:

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

Eccezioni

ArgumentNullException

entry è nullo.

Dispose()

Esegue attività definite dall’applicazione associate alla liberazione, rilascio o ripristino delle risorse non gestite.

public void Dispose()

Dispose(bool)

Esegue attività definite dall’applicazione associate alla liberazione, rilascio o ripristino delle risorse non gestite.

protected virtual void Dispose(bool disposing)

Parametri

disposing bool

Se le risorse gestite devono essere eliminate.

ExtractToDirectory(string)

Estrae tutti i file nell’archivio nella directory fornita.

public void ExtractToDirectory(string destinationDirectory)

Parametri

destinationDirectory string

Il percorso della directory in cui posizionare i file estratti.

Esempi

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

Osservazioni

Se la directory non esiste, verrà creata.

Eccezioni

ArgumentNullException

path è nullo

PathTooLongException

Il percorso specificato, il nome del file, o entrambi superano la lunghezza massima definita dal sistema. Ad esempio, su piattaforme basate su Windows, i percorsi devono essere inferiori a 248 caratteri e i nomi dei file devono essere inferiori a 260 caratteri.

SecurityException

Il chiamante non ha il permesso richiesto per accedere alla directory esistente.

NotSupportedException

Se la directory non esiste, il percorso contiene un carattere due punti (:) che non fa parte di un’etichetta di unità (“C:").

ArgumentException

path è una stringa di lunghezza zero, contiene solo spazi bianchi o contiene uno o più caratteri non validi. Puoi interrogare i caratteri non validi utilizzando il metodo System.IO.Path.GetInvalidPathChars. - o - il percorso è prefissato con, o contiene, solo un carattere due punti (:).

IOException

La directory specificata dal percorso è un file. - o - Il nome della rete non è noto.

InvalidDataException

L’archivio è corrotto.

Save(string, XarSaveOptions)

Salva l’archivio nel file di destinazione fornito.

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

Parametri

destinationFileName string

Il percorso dell’archivio da creare. Se il nome del file specificato punta a un file esistente, verrà sovrascritto.

saveOptions XarSaveOptions

Opzioni per salvare l’archivio xar.

Eccezioni

ArgumentNullException

destinationFileName è nullo.

InvalidOperationException

Impossibile modificare l’archivio xar.

Save(Stream, XarSaveOptions)

Salva l’archivio nello stream fornito.

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

Parametri

output Stream

Stream di destinazione.

saveOptions XarSaveOptions

Opzioni per salvare l’archivio xar.

Eccezioni

ArgumentNullException

output è nullo.

ArgumentException

output non è scrivibile/leggibile o non è cercabile.

InvalidOperationException

Impossibile modificare l’archivio xar.

 Italiano