ZipFile.CreateFromDirectory 메서드

정의

지정된 디렉터리에서 파일 및 디렉터리를 포함하는 Zip 보관 파일을 만듭니다.

오버로드

CreateFromDirectory(String, Stream)

지정된 디렉터리의 파일 및 디렉터리를 포함하는 지정된 스트림에 zip 보관 파일을 만듭니다.

CreateFromDirectory(String, String)

지정된 디렉터리에서 파일 및 디렉터리를 포함하는 Zip 보관 파일을 만듭니다.

CreateFromDirectory(String, Stream, CompressionLevel, Boolean)

지정된 디렉터리의 파일 및 디렉터리를 포함하고, 지정된 압축 수준을 사용하며, 필요에 따라 기본 디렉터리를 포함하는 지정된 스트림에 zip 보관 파일을 만듭니다.

CreateFromDirectory(String, String, CompressionLevel, Boolean)

지정된 디렉터리의 파일 및 디렉터리를 포함하고 지정된 압축 수준을 사용하며 기본 디렉터리를 선택적으로 포함하는 zip 보관 저장소를 만듭니다.

CreateFromDirectory(String, Stream, CompressionLevel, Boolean, Encoding)

지정된 디렉터리의 파일과 디렉터리를 포함하는 지정된 스트림에 zip 보관 파일을 만들고, 항목 이름에 대해 지정된 압축 수준 및 문자 인코딩을 사용하며, 필요에 따라 기본 디렉터리를 포함합니다.

CreateFromDirectory(String, String, CompressionLevel, Boolean, Encoding)

지정된 디렉터리의 파일 및 디렉터리를 포함하고 항목 이름에 대해 지정된 압축 수준 및 문자 인코딩을 사용하며 기본 디렉터리를 선택적으로 포함하는 zip 보관 저장소를 만듭니다.

CreateFromDirectory(String, Stream)

Source:
ZipFile.Create.cs
Source:
ZipFile.Create.cs

지정된 디렉터리의 파일 및 디렉터리를 포함하는 지정된 스트림에 zip 보관 파일을 만듭니다.

public:
 static void CreateFromDirectory(System::String ^ sourceDirectoryName, System::IO::Stream ^ destination);
public static void CreateFromDirectory (string sourceDirectoryName, System.IO.Stream destination);
static member CreateFromDirectory : string * System.IO.Stream -> unit
Public Shared Sub CreateFromDirectory (sourceDirectoryName As String, destination As Stream)

매개 변수

sourceDirectoryName
String

보관되는 디렉터리의 경로(상대 또는 절대 경로로 지정)입니다. 상대 경로는 현재 작업 디렉터리에 상대적으로 해석됩니다.

destination
Stream

zip 보관 파일을 저장할 스트림입니다.

예외

sourceDirectoryNameEmpty이거나, 공백만 포함하거나 또는 잘못된 문자를 하나 이상 포함하는 경우

또는

스트림은 destination 쓰기를 지원하지 않습니다.

sourceDirectoryName 또는 destinationnull인 경우

sourceDirectoryName 지정된 경로에서 파일 이름 또는 둘 다 시스템 정의 최대 길이를 초과합니다.

sourceDirectoryName이 잘못되었거나 존재하지 않는 경우(예: 매핑되지 않은 드라이브의 경로를 지정한 경우)

지정된 디렉터리의 파일을 열 수 없는 경우

또는

보관할 파일을 여는 동안 I/O 오류가 발생했습니다.

sourceDirectoryName에 잘못된 형식이 포함되어 있는 경우

설명

파일 시스템의 디렉터리 구조는 보관 파일에 유지됩니다. 디렉터리가 비어 있으면 빈 보관 파일이 만들어집니다. 이 메서드 오버로드는 보관에 기본 디렉터리를 포함하지 않으며 압축 수준을 지정할 수 없습니다. 기본 디렉터리를 포함하거나 압축 수준을 지정하려면 메서드 오버로드를 CreateFromDirectory(String, Stream, CompressionLevel, Boolean) 호출합니다. 디렉터리의 파일을 보관 파일에 추가할 수 없는 경우 보관 파일은 불완전하고 유효하지 않은 상태로 남아 있으며 메서드는 예외를 IOException throw합니다.

적용 대상

CreateFromDirectory(String, String)

Source:
ZipFile.Create.cs
Source:
ZipFile.Create.cs
Source:
ZipFile.Create.cs

지정된 디렉터리에서 파일 및 디렉터리를 포함하는 Zip 보관 파일을 만듭니다.

public:
 static void CreateFromDirectory(System::String ^ sourceDirectoryName, System::String ^ destinationArchiveFileName);
public static void CreateFromDirectory (string sourceDirectoryName, string destinationArchiveFileName);
static member CreateFromDirectory : string * string -> unit
Public Shared Sub CreateFromDirectory (sourceDirectoryName As String, destinationArchiveFileName As String)

매개 변수

sourceDirectoryName
String

보관되는 디렉터리의 경로(상대 또는 절대 경로로 지정)입니다. 상대 경로는 현재 작업 디렉터리에 상대적으로 해석됩니다.

destinationArchiveFileName
String

만들 보관 위치의 경로(상대 또는 절대 경로로 지정)입니다. 상대 경로는 현재 작업 디렉터리에 상대적으로 해석됩니다.

예외

sourceDirectoryName 또는 destinationArchiveFileName은 공백만 있는 Empty이거나 잘못된 문자가 하나 이상 있는 경우입니다.

sourceDirectoryName 또는 destinationArchiveFileNamenull인 경우

sourceDirectoryName 또는 destinationArchiveFileName에서 지정된 경로, 파일 이름 또는 둘 다가 시스템에 정의된 최대 길이를 초과하는 경우

sourceDirectoryName이 잘못되었거나 존재하지 않는 경우(예: 매핑되지 않은 드라이브의 경로를 지정한 경우)

destinationArchiveFileName가 이미 있는 경우

또는

지정된 디렉터리의 파일을 열 수 없는 경우

또는

보관할 파일을 여는 동안 I/O 오류가 발생했습니다.

destinationArchiveFileName은 디렉터리를 지정합니다.

또는

호출자에게는 sourceDirectoryName에서 지정된 디렉터리에 액세스하기 위한 필수 권한이 없거나 destinationArchiveFileName에 지정된 파일이 없습니다.

sourceDirectoryName 또는 destinationArchiveFileName에 잘못된 형식이 포함되어 있는 경우

또는

zip 보관 위치가 쓰기를 지원하지 않는 경우

예제

이 예제에서는 클래스를 사용하여 zip 보관 파일을 만들고 추출하는 ZipFile 방법을 보여줍니다. 폴더의 내용을 zip 보관 파일로 압축한 다음 해당 콘텐츠를 새 폴더로 추출합니다. ZipFile 클래스를 사용하려면 프로젝트에서 System.IO.Compression.FileSystem 어셈블리를 참조해야 합니다.

using System;
using System.IO.Compression;

class Program
{
    static void Main(string[] args)
    {
        string startPath = @".\start";
        string zipPath = @".\result.zip";
        string extractPath = @".\extract";

        ZipFile.CreateFromDirectory(startPath, zipPath);

        ZipFile.ExtractToDirectory(zipPath, extractPath);
    }
}
open System.IO.Compression

let startPath = @".\start"
let zipPath = @".\result.zip"
let extractPath = @".\extract"

ZipFile.CreateFromDirectory(startPath, zipPath)

ZipFile.ExtractToDirectory(zipPath, extractPath)
Imports System.IO.Compression

Module Module1

    Sub Main()
        Dim startPath As String = ".\start"
        Dim zipPath As String = ".\result.zip"
        Dim extractPath As String = ".\extract"

        ZipFile.CreateFromDirectory(startPath, zipPath)

        ZipFile.ExtractToDirectory(zipPath, extractPath)
    End Sub

End Module

설명

파일 시스템의 디렉터리 구조는 보관 파일에 유지됩니다. 디렉터리가 비어 있으면 빈 보관 파일이 만들어집니다. 이 메서드 오버로드는 보관에 기본 디렉터리를 포함하지 않으며 압축 수준을 지정할 수 없습니다. 기본 디렉터리를 포함하거나 압축 수준을 지정하려면 메서드 오버로드를 CreateFromDirectory(String, String, CompressionLevel, Boolean) 호출합니다.

보관 파일이 이미 있는 경우 예외가 IOException throw됩니다. 지정된 이름의 항목이 보관 파일에 이미 있는 경우 동일한 이름으로 두 번째 항목이 만들어집니다.

디렉터리의 파일을 보관 파일에 추가할 수 없는 경우 보관 파일은 불완전하고 유효하지 않은 상태로 남아 있으며 메서드는 예외를 IOException throw합니다.

적용 대상

CreateFromDirectory(String, Stream, CompressionLevel, Boolean)

Source:
ZipFile.Create.cs
Source:
ZipFile.Create.cs

지정된 디렉터리의 파일 및 디렉터리를 포함하고, 지정된 압축 수준을 사용하며, 필요에 따라 기본 디렉터리를 포함하는 지정된 스트림에 zip 보관 파일을 만듭니다.

public:
 static void CreateFromDirectory(System::String ^ sourceDirectoryName, System::IO::Stream ^ destination, System::IO::Compression::CompressionLevel compressionLevel, bool includeBaseDirectory);
public static void CreateFromDirectory (string sourceDirectoryName, System.IO.Stream destination, System.IO.Compression.CompressionLevel compressionLevel, bool includeBaseDirectory);
static member CreateFromDirectory : string * System.IO.Stream * System.IO.Compression.CompressionLevel * bool -> unit
Public Shared Sub CreateFromDirectory (sourceDirectoryName As String, destination As Stream, compressionLevel As CompressionLevel, includeBaseDirectory As Boolean)

매개 변수

sourceDirectoryName
String

보관되는 디렉터리의 경로(상대 또는 절대 경로로 지정)입니다. 상대 경로는 현재 작업 디렉터리에 상대적으로 해석됩니다.

destination
Stream

zip 보관 파일을 저장할 스트림입니다.

compressionLevel
CompressionLevel

항목을 만들 때 속도 또는 압축 효율을 강조할지 여부를 나타내는 열거형 값 중 하나입니다.

includeBaseDirectory
Boolean

보관 파일 루트에 있는 sourceDirectoryName의 디렉터리 이름을 포함하려면 true이고, 디렉터리의 내용만 포함하려면 false입니다.

예외

sourceDirectoryNameEmpty이거나, 공백만 포함하거나 또는 잘못된 문자를 하나 이상 포함하는 경우

또는

스트림은 destination 쓰기를 지원하지 않습니다.

sourceDirectoryName 또는 destinationnull인 경우

sourceDirectoryName 지정된 경로에서 파일 이름 또는 둘 다 시스템 정의 최대 길이를 초과합니다.

sourceDirectoryName이 잘못되었거나 존재하지 않는 경우(예: 매핑되지 않은 드라이브의 경로를 지정한 경우)

지정된 디렉터리의 파일을 열 수 없는 경우

또는

보관할 파일을 여는 동안 I/O 오류가 발생했습니다.

sourceDirectoryName에 잘못된 형식이 포함되어 있는 경우

compressionLevel는 유효한 CompressionLevel 값이 아닙니다.

설명

파일 시스템의 디렉터리 구조는 보관 파일에 유지됩니다. 디렉터리가 비어 있으면 빈 보관 파일이 만들어집니다. 이 메서드 오버로드를 사용하여 압축 수준 및 보관에 기본 디렉터리를 포함할지 여부를 지정합니다. 디렉터리의 파일을 보관 파일에 추가할 수 없는 경우 보관 파일은 불완전하고 유효하지 않은 상태로 남아 있으며 메서드는 예외를 IOException throw합니다.

적용 대상

CreateFromDirectory(String, String, CompressionLevel, Boolean)

Source:
ZipFile.Create.cs
Source:
ZipFile.Create.cs
Source:
ZipFile.Create.cs

지정된 디렉터리의 파일 및 디렉터리를 포함하고 지정된 압축 수준을 사용하며 기본 디렉터리를 선택적으로 포함하는 zip 보관 저장소를 만듭니다.

public:
 static void CreateFromDirectory(System::String ^ sourceDirectoryName, System::String ^ destinationArchiveFileName, System::IO::Compression::CompressionLevel compressionLevel, bool includeBaseDirectory);
public static void CreateFromDirectory (string sourceDirectoryName, string destinationArchiveFileName, System.IO.Compression.CompressionLevel compressionLevel, bool includeBaseDirectory);
static member CreateFromDirectory : string * string * System.IO.Compression.CompressionLevel * bool -> unit
Public Shared Sub CreateFromDirectory (sourceDirectoryName As String, destinationArchiveFileName As String, compressionLevel As CompressionLevel, includeBaseDirectory As Boolean)

매개 변수

sourceDirectoryName
String

보관되는 디렉터리의 경로(상대 또는 절대 경로로 지정)입니다. 상대 경로는 현재 작업 디렉터리에 상대적으로 해석됩니다.

destinationArchiveFileName
String

만들 보관 위치의 경로(상대 또는 절대 경로로 지정)입니다. 상대 경로는 현재 작업 디렉터리에 상대적으로 해석됩니다.

compressionLevel
CompressionLevel

항목을 만들 때 속도 또는 압축 효율을 강조할지 여부를 나타내는 열거형 값 중 하나입니다.

includeBaseDirectory
Boolean

보관 파일 루트에 있는 sourceDirectoryName의 디렉터리 이름을 포함하려면 true이고, 디렉터리의 내용만 포함하려면 false입니다.

예외

sourceDirectoryName 또는 destinationArchiveFileName은 공백만 있는 Empty이거나 잘못된 문자가 하나 이상 있는 경우입니다.

sourceDirectoryName 또는 destinationArchiveFileNamenull인 경우

sourceDirectoryName 또는 destinationArchiveFileName에서 지정된 경로, 파일 이름 또는 둘 다가 시스템에 정의된 최대 길이를 초과하는 경우

sourceDirectoryName이 잘못되었거나 존재하지 않는 경우(예: 매핑되지 않은 드라이브의 경로를 지정한 경우)

destinationArchiveFileName가 이미 있는 경우

또는

지정된 디렉터리의 파일을 열 수 없는 경우

또는

보관할 파일을 여는 동안 I/O 오류가 발생했습니다.

destinationArchiveFileName은 디렉터리를 지정합니다.

또는

호출자에게는 sourceDirectoryName에서 지정된 디렉터리에 액세스하기 위한 필수 권한이 없거나 destinationArchiveFileName에 지정된 파일이 없습니다.

sourceDirectoryName 또는 destinationArchiveFileName에 잘못된 형식이 포함되어 있는 경우

또는

zip 보관 위치가 쓰기를 지원하지 않는 경우

예제

이 예제에서는 클래스를 사용하여 zip 보관 파일을 만들고 추출하는 ZipFile 방법을 보여줍니다. 폴더의 내용을 zip 보관 파일로 압축한 다음 해당 콘텐츠를 새 폴더로 추출합니다. 보관 파일을 압축할 때 기본 디렉터리가 포함되고 압축 수준이 효율성보다 작업 속도를 강조하도록 설정됩니다. ZipFile 클래스를 사용하려면 프로젝트에서 System.IO.Compression.FileSystem 어셈블리를 참조해야 합니다.

using System;
using System.IO;
using System.IO.Compression;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string startPath = @"c:\example\start";
            string zipPath = @"c:\example\result.zip";
            string extractPath = @"c:\example\extract";

            ZipFile.CreateFromDirectory(startPath, zipPath, CompressionLevel.Fastest, true);

            ZipFile.ExtractToDirectory(zipPath, extractPath);
        }
    }
}
open System.IO.Compression

let startPath = @"c:\example\start"
let zipPath = @"c:\example\result.zip"
let extractPath = @"c:\example\extract"

ZipFile.CreateFromDirectory(startPath, zipPath, CompressionLevel.Fastest, true)

ZipFile.ExtractToDirectory(zipPath, extractPath)
Imports System.IO
Imports System.IO.Compression

Module Module1

    Sub Main()
        Dim startPath As String = "c:\example\start"
        Dim zipPath As String = "c:\example\result.zip"
        Dim extractPath As String = "c:\example\extract"

        ZipFile.CreateFromDirectory(startPath, zipPath, CompressionLevel.Fastest, True)

        ZipFile.ExtractToDirectory(zipPath, extractPath)
    End Sub

End Module

설명

파일 시스템의 디렉터리 구조는 보관 파일에 유지됩니다. 디렉터리가 비어 있으면 빈 보관 파일이 만들어집니다. 이 메서드 오버로드를 사용하여 압축 수준 및 보관에 기본 디렉터리를 포함할지 여부를 지정합니다.

보관 파일이 이미 있는 경우 예외가 IOException throw됩니다. 지정된 이름의 항목이 보관 파일에 이미 있는 경우 동일한 이름으로 두 번째 항목이 만들어집니다.

디렉터리의 파일을 보관 파일에 추가할 수 없는 경우 보관 파일은 불완전하고 유효하지 않은 상태로 남아 있으며 메서드는 예외를 IOException throw합니다.

적용 대상

CreateFromDirectory(String, Stream, CompressionLevel, Boolean, Encoding)

Source:
ZipFile.Create.cs
Source:
ZipFile.Create.cs

지정된 디렉터리의 파일과 디렉터리를 포함하는 지정된 스트림에 zip 보관 파일을 만들고, 항목 이름에 대해 지정된 압축 수준 및 문자 인코딩을 사용하며, 필요에 따라 기본 디렉터리를 포함합니다.

public:
 static void CreateFromDirectory(System::String ^ sourceDirectoryName, System::IO::Stream ^ destination, System::IO::Compression::CompressionLevel compressionLevel, bool includeBaseDirectory, System::Text::Encoding ^ entryNameEncoding);
public static void CreateFromDirectory (string sourceDirectoryName, System.IO.Stream destination, System.IO.Compression.CompressionLevel compressionLevel, bool includeBaseDirectory, System.Text.Encoding? entryNameEncoding);
static member CreateFromDirectory : string * System.IO.Stream * System.IO.Compression.CompressionLevel * bool * System.Text.Encoding -> unit
Public Shared Sub CreateFromDirectory (sourceDirectoryName As String, destination As Stream, compressionLevel As CompressionLevel, includeBaseDirectory As Boolean, entryNameEncoding As Encoding)

매개 변수

sourceDirectoryName
String

보관되는 디렉터리의 경로(상대 또는 절대 경로로 지정)입니다. 상대 경로는 현재 작업 디렉터리에 상대적으로 해석됩니다.

destination
Stream

zip 보관 파일을 저장할 스트림입니다.

compressionLevel
CompressionLevel

항목을 만들 때 속도 또는 압축 효율을 강조할지 여부를 나타내는 열거형 값 중 하나입니다.

includeBaseDirectory
Boolean

보관 파일 루트에 있는 sourceDirectoryName의 디렉터리 이름을 포함하려면 true이고, 디렉터리의 내용만 포함하려면 false입니다.

entryNameEncoding
Encoding

이 아카이브에서 이름을 읽거나 쓰는 동안 사용할 인코딩입니다. 인코딩이 항목 이름에 대해 UTF-8 인코딩을 지원하지 않는 zip 보관 도구와 라이브러리를 사용하여 상호 운용성에 인코딩이 필요할 때만 이 매개 변수에 대한 값을 지정합니다.

예외

sourceDirectoryNameEmpty이거나, 공백만 포함하거나 또는 잘못된 문자를 하나 이상 포함하는 경우

또는

스트림은 destination 쓰기를 지원하지 않습니다.

sourceDirectoryName 또는 destinationnull인 경우

sourceDirectoryName 지정된 경로에서 파일 이름 또는 둘 다 시스템 정의 최대 길이를 초과합니다.

sourceDirectoryName이 잘못되었거나 존재하지 않는 경우(예: 매핑되지 않은 드라이브의 경로를 지정한 경우)

지정된 디렉터리의 파일을 열 수 없는 경우

또는

보관할 파일을 여는 동안 I/O 오류가 발생했습니다.

sourceDirectoryName에 잘못된 형식이 포함되어 있는 경우

compressionLevel는 유효한 CompressionLevel 값이 아닙니다.

설명

파일 시스템의 디렉터리 구조는 보관 파일에 유지됩니다. 디렉터리가 비어 있으면 빈 보관 파일이 만들어집니다. 이 메서드 오버로드를 사용하여 압축 수준 및 문자 인코딩을 지정하고 보관 파일에 기본 디렉터리를 포함할지 여부를 지정합니다. 디렉터리의 파일을 보관 파일에 추가할 수 없는 경우 보관 파일은 불완전하고 유효하지 않은 상태로 남아 있으며 메서드는 예외를 IOException throw합니다.

적용 대상

CreateFromDirectory(String, String, CompressionLevel, Boolean, Encoding)

Source:
ZipFile.Create.cs
Source:
ZipFile.Create.cs
Source:
ZipFile.Create.cs

지정된 디렉터리의 파일 및 디렉터리를 포함하고 항목 이름에 대해 지정된 압축 수준 및 문자 인코딩을 사용하며 기본 디렉터리를 선택적으로 포함하는 zip 보관 저장소를 만듭니다.

public:
 static void CreateFromDirectory(System::String ^ sourceDirectoryName, System::String ^ destinationArchiveFileName, System::IO::Compression::CompressionLevel compressionLevel, bool includeBaseDirectory, System::Text::Encoding ^ entryNameEncoding);
public static void CreateFromDirectory (string sourceDirectoryName, string destinationArchiveFileName, System.IO.Compression.CompressionLevel compressionLevel, bool includeBaseDirectory, System.Text.Encoding entryNameEncoding);
public static void CreateFromDirectory (string sourceDirectoryName, string destinationArchiveFileName, System.IO.Compression.CompressionLevel compressionLevel, bool includeBaseDirectory, System.Text.Encoding? entryNameEncoding);
static member CreateFromDirectory : string * string * System.IO.Compression.CompressionLevel * bool * System.Text.Encoding -> unit
Public Shared Sub CreateFromDirectory (sourceDirectoryName As String, destinationArchiveFileName As String, compressionLevel As CompressionLevel, includeBaseDirectory As Boolean, entryNameEncoding As Encoding)

매개 변수

sourceDirectoryName
String

보관되는 디렉터리의 경로(상대 또는 절대 경로로 지정)입니다. 상대 경로는 현재 작업 디렉터리에 상대적으로 해석됩니다.

destinationArchiveFileName
String

만들 보관 위치의 경로(상대 또는 절대 경로로 지정)입니다. 상대 경로는 현재 작업 디렉터리에 상대적으로 해석됩니다.

compressionLevel
CompressionLevel

항목을 만들 때 속도 또는 압축 효율을 강조할지 여부를 나타내는 열거형 값 중 하나입니다.

includeBaseDirectory
Boolean

보관 파일 루트에 있는 sourceDirectoryName의 디렉터리 이름을 포함하려면 true이고, 디렉터리의 내용만 포함하려면 false입니다.

entryNameEncoding
Encoding

이 아카이브에서 이름을 읽거나 쓰는 동안 사용할 인코딩입니다. 인코딩이 항목 이름에 대해 UTF-8 인코딩을 지원하지 않는 zip 보관 도구와 라이브러리를 사용하여 상호 운용성에 인코딩이 필요할 때만 이 매개 변수에 대한 값을 지정합니다.

예외

sourceDirectoryName 또는 destinationArchiveFileName은 공백만 있는 Empty이거나 잘못된 문자가 하나 이상 있는 경우입니다.

또는

entryNameEncoding이 UTF-8이 아닌 유니코드 인코딩으로 설정된 경우

sourceDirectoryName 또는 destinationArchiveFileNamenull인 경우

sourceDirectoryName 또는 destinationArchiveFileName에서 지정된 경로, 파일 이름 또는 둘 다가 시스템에 정의된 최대 길이를 초과하는 경우

sourceDirectoryName이 잘못되었거나 존재하지 않는 경우(예: 매핑되지 않은 드라이브의 경로를 지정한 경우)

destinationArchiveFileName가 이미 있는 경우

또는

지정된 디렉터리의 파일을 열 수 없는 경우

또는

보관할 파일을 여는 동안 I/O 오류가 발생했습니다.

destinationArchiveFileName은 디렉터리를 지정합니다.

또는

호출자에게는 sourceDirectoryName에서 지정된 디렉터리에 액세스하기 위한 필수 권한이 없거나 destinationArchiveFileName에 지정된 파일이 없습니다.

sourceDirectoryName 또는 destinationArchiveFileName에 잘못된 형식이 포함되어 있는 경우

또는

zip 보관 위치가 쓰기를 지원하지 않는 경우

설명

파일 시스템의 디렉터리 구조는 보관 파일에 유지됩니다. 디렉터리가 비어 있으면 빈 보관 파일이 만들어집니다. 이 메서드 오버로드를 사용하여 압축 수준 및 문자 인코딩을 지정하고 보관 파일에 기본 디렉터리를 포함할지 여부를 지정합니다.

보관 파일이 이미 있는 경우 예외가 IOException throw됩니다. 지정된 이름의 항목이 보관 파일에 이미 있는 경우 동일한 이름으로 두 번째 항목이 만들어집니다.

디렉터리의 파일을 보관 파일에 추가할 수 없는 경우 보관 파일은 불완전하고 유효하지 않은 상태로 남아 있으며 메서드는 예외를 IOException throw합니다.

가 이 아닌 null값으로 설정된 경우 entryNameEncoding 항목 이름은 지정된 인코딩을 사용하여 인코딩됩니다. 지정된 인코딩이 UTF-8이면 각 항목에 대해 언어 인코딩 플래그(로컬 파일 헤더의 범용 비트 플래그)가 설정됩니다.

가 로 null설정된 경우 entryNameEncoding 항목 이름은 다음 규칙에 따라 인코딩됩니다.

  • ASCII 범위를 벗어난 문자를 포함하는 항목 이름의 경우 언어 인코딩 플래그가 설정되고 UTF-8이 항목 이름을 인코딩하는 데 사용됩니다.

  • ASCII 문자만 포함하는 항목 이름의 경우 언어 인코딩 플래그가 설정되고 현재 시스템 기본 코드 페이지가 항목 이름을 인코딩하는 데 사용됩니다.

적용 대상