Поделиться через


ZipArchiveEntry.Open Метод

Определение

Открывает запись из ZIP-архива.

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

Возвращаемое значение

Поток, представляющий содержимое записи.

Исключения

Запись уже открыта для записи.

-или-

Запись была удалена из архива.

-или-

Архив для данной записи был открыт в режиме Create, и в эту запись уже были записаны данные.

Запись или отсутствует в архиве, или повреждена и не может быть прочитана.

-или-

Запись была сжата с использованием неподдерживаемого метода сжатия.

ZIP-архив для данной записи был удален.

Примеры

В следующем примере показано, как создать новую запись, открыть ее с Open помощью метода и выполнить запись в поток.

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

Комментарии

Этот метод используется для доступа к потоку для записи в ZIP-архиве. После получения потока можно выполнять чтение из потока или запись в нее. При записи в поток изменения, внесенные в запись, будут отображаться в ZIP-архиве.

Применяется к