ZipArchiveMode Enumeração

Definição

Especifica valores para interagir com entradas do arquivo morto zip.

public enum ZipArchiveMode
Herança
ZipArchiveMode

Campos

Create 1

Somente entradas de criação de novo arquivo-morto são permitidas.

Read 0

Somente entradas de leitura de arquivo-morto são permitidas.

Update 2

Ambas as operações de leitura e gravação são permitidas entradas de arquivos-mortos.

Comentários

Quando você define o modo como Leitura, o arquivo ou fluxo subjacente deve dar suporte à leitura, mas não precisa dar suporte à busca. Se o arquivo ou fluxo subjacente der suporte à busca, os arquivos serão lidos do arquivo morto conforme solicitados. Se o arquivo ou fluxo subjacente não der suporte à busca, todo o arquivo será mantido na memória.

Quando você define o modo como Create, o arquivo ou fluxo subjacente deve dar suporte à gravação, mas não precisa dar suporte à busca. Cada entrada no arquivo pode ser aberta apenas uma vez para gravação. Se você criar uma única entrada, os dados serão gravados no fluxo ou arquivo subjacente assim que estiverem disponíveis. Se você criar várias entradas, como chamando o CreateFromDirectory método , os dados serão gravados no fluxo ou arquivo subjacente depois que todas as entradas forem criadas.

Quando você define o modo como Atualizar, o arquivo ou fluxo subjacente deve dar suporte à leitura, gravação e busca. O conteúdo de todo o arquivo é mantido na memória e nenhum dado é gravado no arquivo ou fluxo subjacente até que o arquivo seja descartado.

Os seguintes métodos incluem um parâmetro chamado mode que permite especificar o modo de arquivo morto:

Exemplos

O exemplo a seguir mostra como especificar um ZipArchiveMode valor ao criar um ZipArchive objeto.

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

Aplica-se a