Class Bzip2Archive
Namespace: Aspose.Zip.Bzip2
Assembly: Aspose.Zip.dll (25.1.0)
Esta clase representa un archivo de archivo bzip2. Úselo para componer o extraer archivos bzip2.
public class Bzip2Archive : IArchive, IDisposable, IArchiveFileEntry
Herencia
Implementa
IArchive, IDisposable, IArchiveFileEntry
Miembros heredados
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Observaciones
bzip2 comprime archivos utilizando el algoritmo de compresión de texto de ordenación de bloques Burrows-Wheeler y codificación Huffman. Vea más: https://es.wikipedia.org/wiki/Bzip2
Constructores
Bzip2Archive()
Inicializa una nueva instancia de la clase Aspose.Zip.Bzip2.Bzip2Archive preparada para comprimir.
public Bzip2Archive()
Ejemplos
El siguiente ejemplo muestra cómo comprimir un archivo.
using (Bzip2Archive archive = new Bzip2Archive())
{
archive.SetSource("data.bin");
archive.Save("archive.bz2");
}
Bzip2Archive(Stream, Bzip2LoadOptions)
Inicializa una nueva instancia de la clase Aspose.Zip.Bzip2.Bzip2Archive preparada para descomprimir.
public Bzip2Archive(Stream sourceStream, Bzip2LoadOptions loadOptions = null)
Parámetros
sourceStream
Stream
La fuente del archivo comprimido.
loadOptions
Bzip2LoadOptions
Las opciones para cargar el archivo comprimido.
Ejemplos
Abra un archivo comprimido desde un flujo y extráigalo a un MemoryStream
var ms = new MemoryStream();
using (Bzip2Archive archive = new Bzip2Archive(File.OpenRead("archive.bz2")))
archive.Open().CopyTo(ms);
Observaciones
Este constructor no descomprime. Consulte el método Aspose.Zip.Bzip2.Bzip2Archive.Open para descomprimir.
Bzip2Archive(string, Bzip2LoadOptions)
Inicializa una nueva instancia de la clase Aspose.Zip.Bzip2.Bzip2Archive preparada para descomprimir.
public Bzip2Archive(string path, Bzip2LoadOptions loadOptions = null)
Parámetros
path
string
La ruta al archivo comprimido.
loadOptions
Bzip2LoadOptions
Las opciones para cargar el archivo comprimido.
Ejemplos
Abra un archivo comprimido desde la ruta y extráigalo a un MemoryStream
var ms = new MemoryStream();
using (Bzip2Archive archive = new Bzip2Archive("archive.bz2"))
archive.Open().CopyTo(ms);
Observaciones
Este constructor no descomprime. Consulte el método Aspose.Zip.Bzip2.Bzip2Archive.Open para descomprimir.
Excepciones
path
es nulo.
El llamador no tiene el permiso requerido para acceder.
El path
está vacío, contiene solo espacios en blanco o contiene caracteres no válidos.
El acceso al archivo path
está denegado.
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.
El archivo en path
contiene dos puntos (:) en medio de la cadena.
El archivo no se encuentra.
La ruta especificada no es válida, como estar en una unidad no asignada.
El archivo ya está abierto.
Métodos
Dispose()
Realiza tareas definidas por la aplicación asociadas con la liberación, liberación o reinicio de recursos no administrados.
public void Dispose()
Dispose(bool)
Realiza tareas definidas por la aplicación asociadas con la liberación, liberación o reinicio de recursos no administrados.
protected virtual void Dispose(bool disposing)
Parámetros
disposing
bool
Si los recursos administrados deben ser liberados.
Extract(Stream)
Extrae el archivo comprimido al flujo proporcionado.
public void Extract(Stream destination)
Parámetros
destination
Stream
Flujo de destino. Debe ser escribible.
Ejemplos
using (Bzip2Archive archive = new Bzip2Archive("archive.bz2"))
{
archive.Extract(httpResponseStream);
}
Excepciones
destination
no admite escritura.
Extract(string)
Extrae el archivo comprimido al archivo por la ruta.
public FileInfo Extract(string path)
Parámetros
path
string
La ruta al archivo de destino. Si el archivo ya existe, será sobrescrito.
Devuelve
Información del archivo extraído.
Excepciones
path
es nulo.
El llamador no tiene el permiso requerido para acceder.
El path
está vacío, contiene solo espacios en blanco o contiene caracteres no válidos.
El acceso al archivo path
está denegado.
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.
El archivo en path
contiene dos puntos (:) en medio de la cadena.
El archivo no se encuentra.
La ruta especificada no es válida, como estar en una unidad no asignada.
El archivo ya está abierto.
ExtractToDirectory(string)
Extrae el contenido del archivo comprimido al directorio proporcionado.
public void ExtractToDirectory(string destinationDirectory)
Parámetros
destinationDirectory
string
La ruta al directorio donde se colocarán los archivos extraídos.
Observaciones
Si el directorio no existe, será creado.
Excepciones
destinationDirectory
es nulo.
La ruta especificada, 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.
El llamador no tiene el permiso requerido para acceder al directorio existente.
Si el directorio no existe, la ruta contiene un carácter de dos puntos (:) que no es parte de una etiqueta de unidad (“C:").
destinationDirectory
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- la ruta está prefijada con, o contiene, solo un carácter de dos puntos (:).
El directorio especificado por la ruta es un archivo. -o- El nombre de la red no es conocido.
Open()
Abre el archivo comprimido para extracción y proporciona un flujo con el contenido del archivo.
public Stream Open()
Devuelve
El flujo que representa el contenido del archivo comprimido.
Ejemplos
Uso:
Stream decompressed = archive.Open();
.NET 4.0 y superior - use el método Stream.CopyTo:
decompressed.CopyTo(httpResponse.OutputStream)
.NET 3.5 y anteriores - copie los bytes manualmente:
byte[] buffer = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
fileStream.Write(buffer, 0, bytesRead);
```</p>
#### Observaciones
Lea desde el flujo para obtener el contenido original del archivo. Consulte la sección de ejemplos.
### <a id="Aspose_Zip_Bzip2_Bzip2Archive_Save_System_IO_Stream_Aspose_Zip_Bzip2_Bzip2SaveOptions_"></a> Save\(Stream, Bzip2SaveOptions\)
Guarda el archivo comprimido en el flujo proporcionado.
```csharp
public void Save(Stream outputStream, Bzip2SaveOptions saveOptions = null)
Parámetros
outputStream
Stream
Flujo de destino.
saveOptions
Bzip2SaveOptions
Opciones para guardar un archivo comprimido bzip2. Si no se especifica, se utilizará un tamaño de bloque de 900 Kb.
Ejemplos
Escribe datos comprimidos en el flujo de respuesta http.
using (var archive = new Bzip2Archive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save(httpResponse.OutputStream);
}
Observaciones
outputStream
debe ser escribible.
Excepciones
No se ha proporcionado la fuente de datos que se va a archivar.
outputStream
no es escribible.
La fuente de archivo es de solo lectura o es un directorio.
La ruta de la fuente de archivo especificada no es válida, como estar en una unidad no asignada.
La fuente de archivo ya está abierta.
Save(string, Bzip2SaveOptions)
Guarda el archivo comprimido en el archivo de destino proporcionado.
public void Save(string destinationFileName, Bzip2SaveOptions saveOptions = null)
Parámetros
destinationFileName
string
La ruta del archivo comprimido a crear. Si el nombre de archivo especificado apunta a un archivo existente, será sobrescrito.
saveOptions
Bzip2SaveOptions
Opciones para guardar un archivo comprimido bzip2. Si no se especifica, se utilizará un tamaño de bloque de 900 Kb.
Ejemplos
Escribe datos comprimidos en un archivo.
using (var archive = new Bzip2Archive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save("data.bz2");
}
Excepciones
destinationFileName
es nulo.
El llamador no tiene el permiso requerido para acceder.
El destinationFileName
está vacío, contiene solo espacios en blanco o contiene caracteres no válidos.
El acceso al archivo destinationFileName
está denegado.
El destinationFileName
, 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.
El archivo en destinationFileName
contiene dos puntos (:) en medio de la cadena.
SetSource(Stream)
Establece el contenido que se va a comprimir dentro del archivo.
public void SetSource(Stream source)
Parámetros
source
Stream
El flujo de entrada para el archivo comprimido.
Ejemplos
using (Bzip2Archive archive = new Bzip2Archive())
{
archive.SetSource(new MemoryStream(new byte[] { 0x00,0xFF }));
archive.Save("archive.bz2");
}
SetSource(FileInfo)
Establece el contenido que se va a comprimir dentro del archivo.
public void SetSource(FileInfo fileInfo)
Parámetros
fileInfo
FileInfo
La referencia a un archivo que se va a comprimir.
Ejemplos
using (Bzip2Archive archive = new Bzip2Archive())
{
archive.SetSource(new FileInfo("data.bin"));
archive.Save("archive.bz2");
}
SetSource(string)
Establece el contenido que se va a comprimir dentro del archivo.
public void SetSource(string path)
Parámetros
path
string
Ruta al archivo que se va a comprimir.
Ejemplos
using (Bzip2Archive archive = new Bzip2Archive())
{
archive.SetSource("data.bin");
archive.Save("archive.bz2");
}
Excepciones
path
es nulo.
El llamador no tiene el permiso requerido para acceder.
El path
está vacío, contiene solo espacios en blanco o contiene caracteres no válidos.
El acceso al archivo path
está denegado.
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.
El archivo en path
contiene dos puntos (:) en medio de la cadena.
SetSource(TarArchive, TarFormat)
Establece el contenido que se va a comprimir dentro del archivo.
public void SetSource(TarArchive tarArchive, TarFormat format = TarFormat.UsTar)
Parámetros
tarArchive
TarArchive
Archivo tar que se va a comprimir.
format
TarFormat
Define el formato de encabezado tar.
Ejemplos
using (var tarArchive = new TarArchive())
{
tarArchive.CreateEntry("first.bin", "data1.bin");
tarArchive.CreateEntry("second.bin", "data2.bin");
using (var bzippedArchive = new Bzip2Archive())
{
bzippedArchive.SetSource(tarArchive);
bzippedArchive.Save("archive.tar.bz2");
}
}
Observaciones
Utilice este método para componer un archivo tar.bz2 conjunto.
SetSource(CpioArchive, CpioFormat)
Establece el contenido que se va a comprimir dentro del archivo.
public void SetSource(CpioArchive cpioArchive, CpioFormat format = CpioFormat.OldAscii)
Parámetros
cpioArchive
CpioArchive
Archivo cpio que se va a comprimir.
format
CpioFormat
Define el formato de encabezado cpio.
Ejemplos
using (var cpioArchive = new CpioArchive())
{
cpioArchive.CreateEntry("first.bin", "data1.bin");
cpioArchive.CreateEntry("second.bin", "data2.bin");
using (var bzippedArchive = new Bzip2Archive())
{
bzippedArchive.SetSource(cpioArchive);
bzippedArchive.Save("archive.cpio.bz2");
}
}
Observaciones
Utilice este método para componer un archivo cpio.bz2 conjunto.