이 설명서는 보관되지만 유지 되지 않습니다.

Directory.Delete 메서드 (String, Boolean)

지정된 디렉터리와 해당 디렉터리의 하위 디렉터리를 삭제합니다.

네임스페이스: System.IO
어셈블리: mscorlib(mscorlib.dll)

public static void Delete (
	string path,
	bool recursive
)
public static void Delete (
	String path, 
	boolean recursive
)
public static function Delete (
	path : String, 
	recursive : boolean
)
적용할 수 없음.

매개 변수

path

제거할 디렉터리의 이름입니다.

recursive

path의 디렉터리, 하위 디렉터리 및 파일을 제거하려면 true이고, 그렇지 않으면 false입니다.

예외 형식조건

IOException

path에 지정된 것과 이름 및 위치가 같은 파일이 있는 경우

- 또는 -

path로 지정된 디렉터리는 읽기 전용이거나 recursivefalse이고 path가 빈 디렉터리가 아닌 경우

- 또는 -

이 디렉터리는 응용 프로그램의 현재 작업 디렉터리입니다.

UnauthorizedAccessException

호출자에게 필요한 권한이 없는 경우

ArgumentException

path가 길이가 0인 문자열이거나, 공백만 포함하거나 또는 InvalidPathChars로 정의된 하나 이상의 잘못된 문자를 포함하는 경우

ArgumentNullException

path가 null 참조(Visual Basic의 경우 Nothing)인 경우

PathTooLongException

지정된 경로 또는 파일 이름이 시스템에 정의된 최대 길이를 초과하는 경우. 예를 들어, Windows 기반 플랫폼에서는 경로에 248자 미만의 문자를 사용해야 하며 파일 이름에는 260자 미만의 문자를 사용해야 합니다.

DirectoryNotFoundException

지정된 경로가 잘못된 경우(예: 매핑되지 않은 드라이브의 경로를 지정한 경우)

path 매개 변수에는 상대 경로나 절대 경로 정보를 지정할 수 있습니다. 상대 경로 정보는 현재 작업 디렉터리에 상대적으로 해석됩니다. 현재 작업 디렉터리를 얻는 방법에 대해서는 GetCurrentDirectory를 참조하십시오.

path 매개 변수는 대/소문자를 구분하지 않습니다.

recursive 매개 변수가 true인 경우 사용자에게 현재 디렉터리와 모든 하위 디렉터리에 대한 쓰기 권한이 있어야 합니다.

심볼 링크나 탑재 지점 같은 재분석 지점이 포함된 디렉터리를 삭제할 경우에는 이 메서드가 조금 다르게 동작합니다. 재분석 지점이 디렉터리(예: 탑재 지점)이면 재분석 지점이 분리되고 탑재 지점이 삭제됩니다. 이 메서드는 재분석 지점을 재귀적으로 검색하지 않습니다. 재분석 지점이 파일에 대한 심볼 링크인 경우에는 재분석 지점만 삭제되고 심볼 링크의 대상은 삭제되지 않습니다.

공통적인 I/O 작업 목록을 보려면 공통적인 I/O 작업을 참조하십시오.

Windows Mobile 2003 for Pocket PC, Windows Mobile 2003 for Smartphone, Windows CE 플랫폼 참고: 일부 장치 파일 시스템에서는 상대 경로가 지원되지 않습니다. 절대 경로 정보를 지정합니다.

다음 코드 예제에서는 지정된 디렉터리와 하위 디렉터리를 만들고 삭제합니다.

using System;
using System.IO;

class Test 
{
	
    public static void Main() 
    {
        // Specify the directories you want to manipulate.
        string path = @"c:\MyDir";
        string subPath = @"c:\MyDir\temp";

        try 
        {
            // Determine whether the directory exists.
            if (!Directory.Exists(path)) 
            {
                // Create the directory.
                Directory.CreateDirectory(path);
            }


            if (!Directory.Exists(subPath)) 
            {
                // Create the directory.
                Directory.CreateDirectory(subPath);
            }

            // This will succeed because subdirectories are being deleted.
            Console.WriteLine("I am about to attempt to delete {0}", path);
            Directory.Delete(path, true);
            Console.WriteLine("The Delete operation was successful.");

        } 
        catch (Exception e) 
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        } 
        finally {}
    }
}

import System.*;
import System.IO.*;

class Test
{
    public static void main(String[] args)
    {
        // Specify the directories you want to manipulate.
        String path = "c:\\MyDir";
        String subPath = "c:\\MyDir\\temp";

        try {
            // Determine whether the directory exists.
            if (!(Directory.Exists(path))) {
                // Create the directory.
                Directory.CreateDirectory(path);
            }

            if (!(Directory.Exists(subPath))) {
                // Create the directory.
                Directory.CreateDirectory(subPath);
            }

            // This will succeed because subdirectories are being deleted.
            Console.WriteLine("I am about to attempt to delete {0}", path);
            Directory.Delete(path, true);
            Console.WriteLine("The Delete operation was successful.");
        }
        catch (System.Exception e) {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
        finally {
        }
    } //main
} //Test

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Microsoft .NET Framework 3.0은 Windows Vista, Microsoft Windows XP SP2 및 Windows Server 2003 SP1에서 지원됩니다.

.NET Framework

3.0, 2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0, 1.0에서 지원

XNA Framework

1.0에서 지원
표시: