SevenZipArchive.Save

Save(Stream)

Guarda el archivo 7z en la secuencia proporcionada.

public void Save(Stream output)
ParámetroEscribeDescripción
outputStreamFlujo de destino.

Excepciones

excepcióncondición
ArgumentExceptionoutput no admite la búsqueda.
ArgumentNullExceptionoutput es nulo.
InvalidOperationExceptionEl codificador no pudo comprimir los datos.

Observaciones

output debe ser buscable.

Ejemplos

using (FileStream sevenZipFile = File.Open("archive.7z", FileMode.Create))
{
  using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
  {
    using (var archive = new SevenZipArchive())
    {
      archive.CreateEntry("data", source);
      archive.Save(sevenZipFile);
    }
  }
}

Ver también


Save(string)

Guarda el archivo en el archivo de destino proporcionado.

public void Save(string destinationFileName)
ParámetroEscribeDescripción
destinationFileNameStringLa ruta del archivo que se va a crear. Si el nombre de archivo especificado apunta a un archivo existente, se sobrescribirá.

Excepciones

excepcióncondición
ArgumentNullExceptiondestinationFileName es nulo.
SecurityExceptionLa persona que llama no tiene el permiso necesario para acceder.
ArgumentExceptionEldestinationFileName está vacío, solo contiene espacios en blanco o contiene caracteres no válidos.
UnauthorizedAccessExceptionAcceso al archivodestinationFileName es denegado.
PathTooLongExceptionEl especificadodestinationFileName, nombre de archivo, o ambos superan 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.
NotSupportedExceptionArchivo endestinationFileName contiene dos puntos (:) en medio de la cadena.

Observaciones

Es posible guardar un archivo en la misma ruta desde la que se cargó. Sin embargo, esto no se recomienda porque este enfoque utiliza la copia en un archivo temporal.

Ejemplos

using (FileStream source = File.Open("data.bin", FileMode.Open, FileAccess.Read))
{
   using (var archive = new SevenZipArchive(new SevenZipEntrySettings(new SevenZipLZMACompressionSettings())))
   {
      archive.CreateEntry("data", source);
      archive.Save("archive.7z");
   }
}

Ver también