ZipArchiveMode Enum

Definition

Anger värden för interaktion med zip-arkivposter.

public enum class ZipArchiveMode
public enum ZipArchiveMode
type ZipArchiveMode = 
Public Enum ZipArchiveMode
Arv
ZipArchiveMode

Fält

Name Värde Description
Read 0

Det är endast tillåtet att läsa arkivposter.

Create 1

Det är endast tillåtet att skapa nya arkivposter.

Update 2

Både läs- och skrivåtgärder tillåts för arkivposter.

Kommentarer

När du ställer in läget på Läs måste den underliggande filen eller dataströmmen ha stöd för läsning, men behöver inte ha stöd för att söka. Om den underliggande filen eller dataströmmen har stöd för att söka, läss filerna från arkivet när de begärs. Om den underliggande filen eller dataströmmen inte stöder sökning lagras hela arkivet i minnet.

När du ställer in läget på Skapa måste den underliggande filen eller dataströmmen ha stöd för skrivning, men behöver inte ha stöd för att söka. Varje post i arkivet kan bara öppnas en gång för skrivning. Om du skapar en enda post skrivs data till den underliggande strömmen eller filen så snart de är tillgängliga. Om du skapar flera poster, till exempel genom att anropa CreateFromDirectory metoden, skrivs data till den underliggande strömmen eller filen när alla poster har skapats.

När du ställer in läget på Uppdatera måste den underliggande filen eller dataströmmen ha stöd för läsning, skrivning och sökning. Innehållet i hela arkivet lagras i minnet och inga data skrivs till den underliggande filen eller dataströmmen förrän arkivet tas bort.

Följande metoder innehåller en parameter med namnet mode som gör att du kan ange arkivläge:

Exempel

I följande exempel visas hur du anger ett ZipArchiveMode värde när du skapar ett ZipArchive objekt.

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

Gäller för