ZipArchiveMode 列挙型

定義

Zip アーカイブのエントリを操作するための値を指定します。Specifies values for interacting with zip archive entries.

public enum class ZipArchiveMode
public enum ZipArchiveMode
type ZipArchiveMode = 
Public Enum ZipArchiveMode
継承
ZipArchiveMode

フィールド

Create 1

新しいアーカイブ エントリの作成に限り許可されます。Only creating new archive entries is permitted.

Read 0

新しいアーカイブ エントリの読み込みに限り許可されます。Only reading archive entries is permitted.

Update 2

読み取りと書き込みの両方の操作がアーカイブ エントリで許可されます。Both read and write operations are permitted for archive entries.

注釈

モードを Read に設定する場合、基になるファイルまたはストリームは読み取りをサポートしている必要がありますが、シークをサポートする必要はありません。When you set the mode to Read, the underlying file or stream must support reading, but does not have to support seeking. 基になるファイルまたはストリームがシークをサポートしている場合は、要求に応じてアーカイブからファイルが読み取られます。If the underlying file or stream supports seeking, the files are read from the archive as they are requested. 基になるファイルまたはストリームがシークをサポートしていない場合は、アーカイブ全体がメモリに保持されます。If the underlying file or stream does not support seeking, the entire archive is held in memory.

作成するモードを設定する場合、基になるファイルまたはストリームが書き込みをサポートしている必要がありますが、シークをサポートする必要はありません。When you set the mode to Create, the underlying file or stream must support writing, but does not have to support seeking. アーカイブ内の各エントリは、書き込みのために1回だけ開くことができます。Each entry in the archive can be opened only once for writing. 1つのエントリを作成した場合、データは使用可能になるとすぐに、基になるストリームまたはファイルに書き込まれます。If you create a single entry, the data is written to the underlying stream or file as soon as it is available. メソッドを呼び出すなどして複数のエントリを作成した場合 CreateFromDirectory 、すべてのエントリが作成された後に、基になるストリームまたはファイルにデータが書き込まれます。If you create multiple entries, such as by calling the CreateFromDirectory method, the data is written to the underlying stream or file after all the entries are created.

モードを更新するように設定した場合、基になるファイルまたはストリームで読み取り、書き込み、シークがサポートされている必要があります。When you set the mode to Update, the underlying file or stream must support reading, writing, and seeking. アーカイブ全体の内容はメモリに保持され、アーカイブが破棄されるまで、基になるファイルまたはストリームにデータは書き込まれません。The content of the entire archive is held in memory, and no data is written to the underlying file or stream until the archive is disposed.

次のメソッドには、アーカイブモードを指定できるという名前のパラメーターが含まれてい mode ます。The following methods include a parameter named mode that lets you specify the archive mode:

Examples

次の例は、オブジェクトの作成時に値を指定する方法を示して ZipArchiveMode ZipArchive います。The following example shows how to specify a ZipArchiveMode value when creating a ZipArchive object.

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

適用対象