ZipArchiveMode 열거형
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
Zip 보관 파일 항목과 상호 작용하기 위한 값을 지정합니다.
public enum class ZipArchiveMode
public enum ZipArchiveMode
type ZipArchiveMode =
Public Enum ZipArchiveMode
- 상속
필드
Create | 1 | 새 보관 항목 만들기만 허용됩니다. |
Read | 0 | 보관 항목 읽기만 허용됩니다. |
Update | 2 | 보관 항목에 대해 읽기 및 쓰기 작업 모두가 허용됩니다. |
설명
모드를 읽기로 설정하면 기본 파일 또는 스트림이 읽기를 지원해야 하지만 검색을 지원할 필요는 없습니다. 기본 파일 또는 스트림이 검색을 지원하는 경우 요청된 대로 파일을 보관 파일에서 읽습니다. 기본 파일 또는 스트림이 검색을 지원하지 않으면 전체 보관 파일이 메모리에 보관됩니다.
모드를 Create 설정하면 기본 파일 또는 스트림이 쓰기를 지원해야 하지만 검색을 지원할 필요는 없습니다. 아카이브의 각 항목은 쓰기를 위해 한 번만 열 수 있습니다. 단일 항목을 만드는 경우 데이터를 사용할 수 있는 즉시 기본 스트림 또는 파일에 기록됩니다. 메서드를 호출 CreateFromDirectory 하는 등 여러 항목을 만드는 경우 모든 항목을 만든 후 데이터가 기본 스트림 또는 파일에 기록됩니다.
모드를 업데이트로 설정하면 기본 파일 또는 스트림이 읽기, 쓰기 및 검색을 지원해야 합니다. 전체 보관 파일의 콘텐츠는 메모리에 저장되며 보관 파일이 삭제될 때까지 기본 파일 또는 스트림에 데이터가 기록되지 않습니다.
다음 메서드에는 보관 모드를 지정할 수 있는 라는 mode
매개 변수가 포함됩니다.
예제
다음 예제에서는 개체를 ZipArchiveMode
만들 때 값을 지정하는 ZipArchive 방법을 보여줍니다.
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
적용 대상
.NET