Class XarArchive

Class XarArchive

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

Esta clase representa un archivo de archivo xar.

public class XarArchive : IArchive, IDisposable

Herencia

objectXarArchive

Implementa

IArchive, IDisposable

Miembros heredados

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

Constructores

XarArchive(XarCompressionSettings)

Inicializa una nueva instancia de la clase Aspose.Zip.Xar.XarArchive.

public XarArchive(XarCompressionSettings defaultCompressionSettings = null)

Parámetros

defaultCompressionSettings XarCompressionSettings

La configuración de compresión predeterminada, aplicada a todas las entradas del archivo.

Ejemplos

El siguiente ejemplo muestra cómo comprimir un archivo.

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

XarArchive(Stream, XarLoadOptions)

Inicializa una nueva instancia de la clase Aspose.Zip.Xar.XarArchive y compone la lista de entradas que se pueden extraer del archivo.

public XarArchive(Stream sourceStream, XarLoadOptions loadOptions = null)

Parámetros

sourceStream Stream

La fuente del archivo. Debe ser buscable.

loadOptions XarLoadOptions

Las opciones para cargar el archivo.

Ejemplos

El siguiente ejemplo muestra cómo extraer todas las entradas a un directorio.

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

Observaciones

Este constructor no descomprime ninguna entrada. Consulte el método Aspose.Zip.Xar.XarFileEntry.Open para descomprimir.

Excepciones

ArgumentNullException

sourceStream es nulo.

ArgumentException

sourceStream no es buscable.

InvalidDataException

sourceStream no es un archivo xar válido.

XarArchive(string, XarLoadOptions)

Inicializa una nueva instancia de la clase Aspose.Zip.Xar.XarArchive y compone la lista de entradas que se pueden extraer del archivo.

public XarArchive(string path, XarLoadOptions loadOptions = null)

Parámetros

path string

La ruta al archivo de archivo.

loadOptions XarLoadOptions

Las opciones para cargar el archivo.

Ejemplos

El siguiente ejemplo muestra cómo extraer todas las entradas a un directorio.

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

Observaciones

Este constructor no descomprime ninguna entrada. Consulte el método Aspose.Zip.Xar.XarFileEntry.Open para descomprimir.

Excepciones

ArgumentNullException

path es nulo.

SecurityException

El llamador no tiene el permiso requerido para acceder.

ArgumentException

El path está vacío, contiene solo espacios en blanco o contiene caracteres no válidos.

UnauthorizedAccessException

El acceso al archivo path está denegado.

PathTooLongException

La path, el nombre del archivo o ambos exceden la longitud máxima definida por el sistema. Por ejemplo, en plataformas basadas en Windows, las rutas deben tener menos de 248 caracteres y los nombres de archivo deben tener menos de 260 caracteres.

NotSupportedException

El archivo en path contiene dos puntos (:) en medio de la cadena.

FileNotFoundException

El archivo no se encuentra.

DirectoryNotFoundException

La ruta especificada no es válida, como estar en una unidad no asignada.

IOException

El archivo ya está abierto.

InvalidDataException

El archivo en path no es un archivo xar válido.

Propiedades

Entries

Obtiene las entradas del tipo Aspose.Zip.Xar.XarEntry que constituyen el archivo.

public IEnumerable<xarentry> Entries { get; }

Valor de la propiedad

IEnumerable<XarEntry&gt;

Métodos

CreateEntries(string, bool, XarCompressionSettings)

Agrega al archivo todos los archivos y directorios de manera recursiva en el directorio dado.

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

Parámetros

sourceDirectory string

Directorio a comprimir.

includeRootDirectory bool

Indica si se debe incluir el directorio raíz o no.

compressionSettings XarCompressionSettings

La configuración de compresión utilizada para los elementos Aspose.Zip.Xar.XarEntry añadidos.

Retorna

XarArchive

Instancia de entrada Xar.

Ejemplos

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

Excepciones

ArgumentNullException

sourceDirectory es nulo.

SecurityException

El llamador no tiene el permiso requerido para acceder a sourceDirectory.

ArgumentException

sourceDirectory contiene caracteres no válidos como “, <, > o |.

PathTooLongException

La path, el nombre del archivo o ambos exceden la longitud máxima definida por el sistema. Por ejemplo, en plataformas basadas en Windows, las rutas deben tener menos de 248 caracteres y los nombres de archivo deben tener menos de 260 caracteres. La path, el nombre del archivo o ambos son demasiado largos.

IOException

sourceDirectory representa un archivo, no un directorio.

CreateEntries(DirectoryInfo, bool, XarCompressionSettings)

Agrega al archivo todos los archivos y directorios de manera recursiva en el directorio dado.

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

Parámetros

directory DirectoryInfo

Directorio a comprimir.

includeRootDirectory bool

Indica si se debe incluir el directorio raíz o no.

compressionSettings XarCompressionSettings

La configuración de compresión utilizada para los elementos Aspose.Zip.Xar.XarEntry añadidos.

Retorna

XarArchive

Instancia de entrada Xar.

Ejemplos

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

Excepciones

ArgumentNullException

directory es nulo.

SecurityException

El llamador no tiene el permiso requerido para acceder a directory.

IOException

directory representa un archivo, no un directorio.

CreateEntry(string, FileInfo, bool, XarCompressionSettings)

Crea una única entrada dentro del archivo.

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

Parámetros

name string

El nombre de la entrada.

fileInfo FileInfo

Los metadatos del archivo o carpeta a comprimir.

openImmediately bool

Verdadero si se abre el archivo inmediatamente, de lo contrario se abre el archivo al guardar el archivo.

compressionSettings XarCompressionSettings

La configuración de compresión utilizada para el elemento Aspose.Zip.Xar.XarEntry añadido.

Retorna

XarEntry

Instancia de entrada Xar.

Ejemplos

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

Observaciones

Si el archivo se abre inmediatamente con el parámetro openImmediately, quedará bloqueado hasta que se elimine el archivo.

Excepciones

ArgumentNullException

name es nulo.

ArgumentException

name está vacío.

ArgumentNullException

fileInfo es nulo.

CreateEntry(string, string, bool, XarCompressionSettings)

Crea una única entrada dentro del archivo.

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

Parámetros

name string

El nombre de la entrada.

sourcePath string

Ruta al archivo que se va a comprimir.

openImmediately bool

Verdadero si se abre el archivo inmediatamente, de lo contrario se abre el archivo al guardar el archivo.

compressionSettings XarCompressionSettings

La configuración de compresión utilizada para el elemento Aspose.Zip.Xar.XarEntry añadido.

Retorna

XarEntry

Instancia de entrada Xar.

Ejemplos

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

Observaciones

El nombre de la entrada se establece únicamente dentro del parámetro name. El nombre del archivo proporcionado en el parámetro sourcePath no afecta el nombre de la entrada.

Si el archivo se abre inmediatamente con el parámetro openImmediately, quedará bloqueado hasta que se elimine el archivo.

Excepciones

ArgumentNullException

sourcePath es nulo.

SecurityException

El llamador no tiene el permiso requerido para acceder.

ArgumentException

El sourcePath está vacío, contiene solo espacios en blanco o contiene caracteres no válidos. - o - El nombre del archivo, como parte del name, excede los 100 símbolos.

UnauthorizedAccessException

El acceso al archivo sourcePath está denegado.

PathTooLongException

La sourcePath, el nombre del archivo o ambos exceden la longitud máxima definida por el sistema. Por ejemplo, en plataformas basadas en Windows, las rutas deben tener menos de 248 caracteres y los nombres de archivo deben tener menos de 260 caracteres. - o - name es demasiado largo para xar.

NotSupportedException

El archivo en sourcePath contiene dos puntos (:) en medio de la cadena.

InvalidOperationException

Imposible modificar el archivo xar.

CreateEntry(string, Stream, XarCompressionSettings)

Crea una única entrada dentro del archivo.

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

Parámetros

name string

El nombre de la entrada.

source Stream

El flujo de entrada para la entrada.

compressionSettings XarCompressionSettings

La configuración de compresión utilizada para el elemento Aspose.Zip.Xar.XarEntry añadido.

Retorna

XarEntry

Instancia de entrada Xar.

Ejemplos

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

Excepciones

ArgumentNullException

name es nulo.

ArgumentNullException

source es nulo.

ArgumentException

name está vacío.

InvalidOperationException

Imposible modificar el archivo xar.

DeleteEntry(XarEntry)

Elimina la primera ocurrencia de una entrada específica de la lista de entradas.

public XarArchive DeleteEntry(XarEntry entry)

Parámetros

entry XarEntry

La entrada que se va a eliminar de la lista de entradas.

Retorna

XarArchive

Instancia de entrada Xar.

Ejemplos

Aquí se muestra cómo puedes eliminar todas las entradas excepto la última:

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

Excepciones

ArgumentNullException

entry es nulo.

Dispose()

Realiza tareas definidas por la aplicación asociadas con la liberación, liberación o restablecimiento de recursos no administrados.

public void Dispose()

Dispose(bool)

Realiza tareas definidas por la aplicación asociadas con la liberación, liberación o restablecimiento de recursos no administrados.

protected virtual void Dispose(bool disposing)

Parámetros

disposing bool

Si se deben liberar los recursos administrados.

ExtractToDirectory(string)

Extrae todos los archivos en el archivo al directorio proporcionado.

public void ExtractToDirectory(string destinationDirectory)

Parámetros

destinationDirectory string

La ruta al directorio donde se colocarán los archivos extraídos.

Ejemplos

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

Observaciones

Si el directorio no existe, se creará.

Excepciones

ArgumentNullException

path es nulo

PathTooLongException

La path, el nombre del archivo o ambos exceden la longitud máxima definida por el sistema. Por ejemplo, en plataformas basadas en Windows, las rutas deben tener menos de 248 caracteres y los nombres de archivo deben tener menos de 260 caracteres.

SecurityException

El llamador no tiene el permiso requerido para acceder al directorio existente.

NotSupportedException

Si el directorio no existe, la ruta contiene un carácter de dos puntos (:) que no es parte de una etiqueta de unidad (“C:").

ArgumentException

path es una cadena de longitud cero, contiene solo espacios en blanco o contiene uno o más caracteres no válidos. Puede consultar los caracteres no válidos utilizando el método System.IO.Path.GetInvalidPathChars. -o- path está precedida por, o contiene, solo un carácter de dos puntos (:).

IOException

El directorio especificado por path es un archivo. -o- El nombre de la red no es conocido.

InvalidDataException

El archivo está dañado.

Save(string, XarSaveOptions)

Guarda el archivo en el destino proporcionado.

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

Parámetros

destinationFileName string

La ruta del archivo que se va a crear. Si el nombre de archivo especificado apunta a un archivo existente, se sobrescribirá.

saveOptions XarSaveOptions

Opciones para guardar el archivo xar.

Excepciones

ArgumentNullException

destinationFileName es nulo.

InvalidOperationException

Imposible modificar el archivo xar.

Save(Stream, XarSaveOptions)

Guarda el archivo en el flujo proporcionado.

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

Parámetros

output Stream

Flujo de destino.

saveOptions XarSaveOptions

Opciones para guardar el archivo xar.

Excepciones

ArgumentNullException

output es nulo.

ArgumentException

output no es escribible/leíble o no es buscable.

InvalidOperationException

Imposible modificar el archivo xar.

 Español