Partager via


ZipArchiveMode Énumération

Définition

Spécifie des valeurs qui définissent l'interaction avec les entrées de l'archive zip.

public enum class ZipArchiveMode
public enum ZipArchiveMode
type ZipArchiveMode = 
Public Enum ZipArchiveMode
Héritage
ZipArchiveMode

Champs

Create 1

Seule la création d’entrées d’archivage est autorisée.

Read 0

Seule la lecture des entrées d’archivage est autorisée.

Update 2

Les opérations de lecture et d’écriture sont autorisées pour les entrées d’archivage.

Remarques

Lorsque vous définissez le mode sur Lecture, le fichier ou le flux sous-jacent doit prendre en charge la lecture, mais ne doit pas prendre en charge la recherche. Si le fichier ou le flux sous-jacent prend en charge la recherche, les fichiers sont lus à partir de l’archive à mesure qu’ils sont demandés. Si le fichier ou le flux sous-jacent ne prend pas en charge la recherche, l’archive entière est conservée en mémoire.

Lorsque vous définissez le mode sur Create, le fichier ou le flux sous-jacent doit prendre en charge l’écriture, mais il n’est pas obligé de prendre en charge la recherche. Chaque entrée de l’archive ne peut être ouverte qu’une seule fois pour l’écriture. Si vous créez une seule entrée, les données sont écrites dans le flux ou le fichier sous-jacent dès qu’elles sont disponibles. Si vous créez plusieurs entrées, par exemple en appelant la CreateFromDirectory méthode , les données sont écrites dans le flux ou le fichier sous-jacent une fois toutes les entrées créées.

Lorsque vous définissez le mode sur Mettre à jour, le fichier ou le flux sous-jacent doit prendre en charge la lecture, l’écriture et la recherche. Le contenu de l’archive entière est conservé en mémoire et aucune donnée n’est écrite dans le fichier ou le flux sous-jacent tant que l’archive n’est pas supprimée.

Les méthodes suivantes incluent un paramètre nommé mode qui vous permet de spécifier le mode d’archivage :

Exemples

L’exemple suivant montre comment spécifier une ZipArchiveMode valeur lors de la création d’un ZipArchive objet.

using System;
using System.IO;
using System.IO.Compression;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            using (FileStream zipToOpen = new FileStream(@"c:\users\exampleuser\release.zip", FileMode.Open))
            {
                using (ZipArchive archive = new ZipArchive(zipToOpen, ZipArchiveMode.Update))
                {
                    ZipArchiveEntry readmeEntry = archive.CreateEntry("Readme.txt");
                    using (StreamWriter writer = new StreamWriter(readmeEntry.Open()))
                    {
                            writer.WriteLine("Information about this package.");
                            writer.WriteLine("========================");
                    }
                }
            }
        }
    }
}
Imports System.IO
Imports System.IO.Compression

Module Module1

    Sub Main()
        Using zipToOpen As FileStream = New FileStream("c:\users\exampleuser\release.zip", FileMode.Open)
            Using archive As ZipArchive = New ZipArchive(zipToOpen, ZipArchiveMode.Update)
                Dim readmeEntry As ZipArchiveEntry = archive.CreateEntry("Readme.txt")
                Using writer As StreamWriter = New StreamWriter(readmeEntry.Open())
                    writer.WriteLine("Information about this package.")
                    writer.WriteLine("========================")
                End Using
            End Using
        End Using
    End Sub

End Module

S’applique à