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à
Implementa
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
sourceStream
è nullo.
sourceStream
non è cercabile.
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
path
è nullo.
Il chiamante non ha il permesso richiesto per accedere.
Il path
è vuoto, contiene solo spazi bianchi o contiene caratteri non validi.
Accesso al file path
negato.
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.
Il file in path
contiene due punti (:) nel mezzo della stringa.
Il file non è stato trovato.
Il percorso specificato non è valido, ad esempio si trova su un’unità non mappata.
Il file è già aperto.
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>
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
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
sourceDirectory
è nullo.
Il chiamante non ha il permesso richiesto per accedere a sourceDirectory
.
sourceDirectory
contiene caratteri non validi come “, <, > o |.
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.
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
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
directory
è nullo.
Il chiamante non ha il permesso richiesto per accedere a directory
.
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
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
name
è nullo.
name
è vuoto.
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
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
sourcePath
è nullo.
Il chiamante non ha il permesso richiesto per accedere.
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.
Accesso al file sourcePath
negato.
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.
Il file in sourcePath
contiene due punti (:) nel mezzo della stringa.
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
Istanza di voce Xar.
Esempi
using (var archive = new XarArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.xar");
}
Eccezioni
name
è nullo.
source
è nullo.
name
è vuoto.
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
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 > 1)
archive.DeleteEntry(archive.Entries.FirstOrDefault());
archive.Save(outputXarFile);
}
Eccezioni
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
path è nullo
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 chiamante non ha il permesso richiesto per accedere alla directory esistente.
Se la directory non esiste, il percorso contiene un carattere due punti (:) che non fa parte di un’etichetta di unità (“C:").
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 (:).
La directory specificata dal percorso è un file. - o - Il nome della rete non è noto.
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
destinationFileName
è nullo.
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
output
è nullo.
output
non è scrivibile/leggibile o non è cercabile.
Impossibile modificare l’archivio xar.