ZipArchiveEntry.Open Método

Definição

Abre a entrada do arquivo zip.

public:
 System::IO::Stream ^ Open();
public System.IO.Stream Open ();
member this.Open : unit -> System.IO.Stream
Public Function Open () As Stream

Retornos

Stream

O fluxo que representa o conteúdo da entrada.

Exceções

A entrada já está atualmente aberta para gravação.

- ou - A entrada foi excluída do arquivo.

- ou - O arquivo para esta entrada foi aberto com o modo Create e essa entrada já foi gravada.

A entrada está ausente do arquivo ou está corrompida e não pode ser lida.

- ou -

A entrada foi compactada usando um método de compactação sem suporte.

O arquivo zip para essa entrada foi descartado.

Exemplos

O exemplo a seguir mostra como criar uma nova entrada, abri-la com o Open método e gravar no fluxo.

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

Comentários

Você usa esse método para acessar o fluxo para uma entrada em um arquivo zip. Depois de recuperar o fluxo, você pode ler ou gravar no fluxo. Quando você grava no fluxo, as modificações feitas na entrada aparecerão no arquivo zip.

Aplica-se a