SevenZipArchive.Save

Save(Stream)

Enregistre l’archive 7z dans le flux fourni.

public void Save(Stream output)
ParamètreTaperLa description
outputStreamFlux de destination.

Exceptions

exceptioncondition
ArgumentExceptionoutput ne supporte pas la recherche.
ArgumentNullExceptionoutput est nul.
InvalidOperationExceptionL’encodeur n’a pas réussi à compresser les données.

Remarques

output doit être recherchable.

Exemples

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);
    }
  }
}

Voir également


Save(string)

Enregistre l’archive dans le fichier de destination fourni.

public void Save(string destinationFileName)
ParamètreTaperLa description
destinationFileNameStringLe chemin de l’archive à créer. Si le nom de fichier spécifié pointe vers un fichier existant, il sera écrasé.

Exceptions

exceptioncondition
ArgumentNullExceptiondestinationFileName est nul.
SecurityExceptionL’appelant n’a pas l’autorisation requise pour accéder.
ArgumentExceptionLedestinationFileName est vide, ne contient que des espaces blancs ou contient des caractères non valides.
UnauthorizedAccessExceptionAccéder au dossierdestinationFileName est refusé.
PathTooLongExceptionLe spécifiédestinationFileName, nom de fichier ou les deux dépassent la longueur maximale définie par le système. Par exemple, sur les plates-formes Windows, les chemins doivent comporter moins de 248 caractères et les noms de fichiers doivent comporter moins de 260 caractères.
NotSupportedExceptionFichier àdestinationFileName contient deux-points (:) au milieu de la chaîne.

Remarques

Il est possible d’enregistrer une archive dans le même chemin que celui depuis lequel elle a été chargée. Cependant, cela n’est pas recommandé car cette approche utilise la copie dans un fichier temporaire.

Exemples

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");
   }
}

Voir également