ZipArchive.CreateEntry 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
Zip 보관 파일에 빈 항목을 만듭니다.
오버로드
CreateEntry(String) |
ZIP 보관 위치에 지정된 경로 및 항목 이름을 가진 빈 항목을 만듭니다. |
CreateEntry(String, CompressionLevel) |
ZIP 보관 위치에 지정된 항목 이름 및 압축 수준을 가진 빈 항목을 만듭니다. |
CreateEntry(String)
- Source:
- ZipArchive.cs
- Source:
- ZipArchive.cs
- Source:
- ZipArchive.cs
ZIP 보관 위치에 지정된 경로 및 항목 이름을 가진 빈 항목을 만듭니다.
public:
System::IO::Compression::ZipArchiveEntry ^ CreateEntry(System::String ^ entryName);
public System.IO.Compression.ZipArchiveEntry CreateEntry (string entryName);
member this.CreateEntry : string -> System.IO.Compression.ZipArchiveEntry
Public Function CreateEntry (entryName As String) As ZipArchiveEntry
매개 변수
- entryName
- String
만들 항목의 이름을 지정하는, 보관 저장소의 루트에 상대적인 경로입니다.
반환
ZIP 보관 위치의 빈 항목입니다.
예외
entryName
이(가) Empty인 경우
entryName
이(가) null
인 경우
zip 보관 위치가 쓰기를 지원하지 않는 경우
zip 보관 위치가 삭제되었습니다.
예제
다음 예제에서는 스트림을 사용하여 항목을 만들고 쓰는 방법을 보여줍니다.
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("========================");
}
}
}
}
}
}
open System.IO
open System.IO.Compression
do
use zipToOpen = new FileStream(@"c:\users\exampleuser\release.zip", FileMode.Open)
use archive = new ZipArchive(zipToOpen, ZipArchiveMode.Update)
let readmeEntry = archive.CreateEntry "Readme.txt"
use 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
설명
문자열은 entryName
zip 보관 파일 내에서 만들려는 항목의 상대 경로를 반영해야 합니다. 제공하는 문자열에는 제한이 없습니다. 그러나 상대 경로로 형식이 지정되지 않은 경우 항목이 만들어지지만 zip 보관 파일의 내용을 추출할 때 예외가 발생할 수 있습니다. 지정된 경로와 이름을 가진 항목이 보관 파일에 이미 있는 경우 동일한 경로와 이름으로 두 번째 항목이 만들어집니다.
새 항목의 LastWriteTime 속성 값이 현재 시간으로 설정됩니다. 항목은 기본 압축 알고리즘의 기본 압축 수준을 사용하여 압축됩니다. 다른 압축 수준을 지정하려면 메서드를 CreateEntry 사용합니다.
적용 대상
CreateEntry(String, CompressionLevel)
- Source:
- ZipArchive.cs
- Source:
- ZipArchive.cs
- Source:
- ZipArchive.cs
ZIP 보관 위치에 지정된 항목 이름 및 압축 수준을 가진 빈 항목을 만듭니다.
public:
System::IO::Compression::ZipArchiveEntry ^ CreateEntry(System::String ^ entryName, System::IO::Compression::CompressionLevel compressionLevel);
public System.IO.Compression.ZipArchiveEntry CreateEntry (string entryName, System.IO.Compression.CompressionLevel compressionLevel);
member this.CreateEntry : string * System.IO.Compression.CompressionLevel -> System.IO.Compression.ZipArchiveEntry
Public Function CreateEntry (entryName As String, compressionLevel As CompressionLevel) As ZipArchiveEntry
매개 변수
- entryName
- String
만들 항목의 이름을 지정하는, 보관 저장소의 루트에 상대적인 경로입니다.
- compressionLevel
- CompressionLevel
항목을 만들 때 속도 또는 압축 효율을 강조할지 여부를 나타내는 열거형 값 중 하나입니다.
반환
ZIP 보관 위치의 빈 항목입니다.
예외
entryName
이(가) Empty인 경우
entryName
이(가) null
인 경우
zip 보관 위치가 쓰기를 지원하지 않는 경우
zip 보관 위치가 삭제되었습니다.
예제
다음 예제에서는 최적의 압축 수준으로 항목을 만드는 방법을 보여 있습니다. 또한 스트림을 사용하여 새 항목에 씁니다.
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", CompressionLevel.Optimal);
using (StreamWriter writer = new StreamWriter(readmeEntry.Open()))
{
writer.WriteLine("Information about this package.");
writer.WriteLine("========================");
}
}
}
}
}
}
open System.IO
open System.IO.Compression
do
use zipToOpen = new FileStream(@"c:\users\exampleuser\release.zip", FileMode.Open)
use archive = new ZipArchive(zipToOpen, ZipArchiveMode.Update)
let readmeEntry = archive.CreateEntry("Readme.txt", CompressionLevel.Optimal)
use 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", CompressionLevel.Optimal)
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
설명
문자열은 entryName
zip 보관 파일 내에서 만들려는 항목의 상대 경로를 반영해야 합니다. 제공하는 문자열에는 제한이 없습니다. 그러나 상대 경로로 형식이 지정되지 않은 경우 항목이 만들어지지만 zip 보관 파일의 내용을 추출할 때 예외가 발생할 수 있습니다. 지정된 이름의 항목이 보관 파일에 이미 있는 경우 동일한 이름으로 두 번째 항목이 만들어집니다.
새 항목의 LastWriteTime 속성 값이 현재 시간으로 설정됩니다. compressionLevel
파일을 최대한 압축하려면 매개 변수 Optimal 를 로 설정합니다. compressionLevel
압축 작업이 시나리오에 Fastest 대해 충분히 빠르게 완료되지 않을 것으로 우려되는 경우에만 매개 변수를 로 설정합니다.
적용 대상
.NET