Directory.GetCurrentDirectory 메서드

정의

애플리케이션의 현재 작업 디렉터리를 가져옵니다.

public:
 static System::String ^ GetCurrentDirectory();
public static string GetCurrentDirectory ();
static member GetCurrentDirectory : unit -> string
Public Shared Function GetCurrentDirectory () As String

반환

현재 작업 디렉터리의 절대 경로를 포함하고 백슬래시(\)로 끝나지 않는 문자열입니다.

예외

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

운영 체제가 현재 디렉터리 기능이 없는 Windows CE입니다.

이 메서드는 .NET Compact Framework에서 사용할 수 있지만 현재 지원되지 않습니다.

예제

다음 예제에서는 GetCurrentDirectory 메서드를 사용하는 방법을 보여 줍니다.

using namespace System;
using namespace System::IO;
int main()
{
   try
   {
      
      // Get the current directory.
      String^ path = Directory::GetCurrentDirectory();
      String^ target = "c:\\temp";
      Console::WriteLine( "The current directory is {0}", path );
      if (  !Directory::Exists( target ) )
      {
         Directory::CreateDirectory( target );
      }
      
      // Change the current directory.
      Environment::CurrentDirectory = target;
      if ( path->Equals( Directory::GetCurrentDirectory() ) )
      {
         Console::WriteLine( "You are in the temp directory." );
      }
      else
      {
         Console::WriteLine( "You are not in the temp directory." );
      }
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "The process failed: {0}", e );
   }

}
using System;
using System.IO;

class Test
{
    public static void Main()
    {
        try
        {
            // Get the current directory.
            string path = Directory.GetCurrentDirectory();
            string target = @"c:\temp";
            Console.WriteLine("The current directory is {0}", path);
            if (!Directory.Exists(target))
            {
                Directory.CreateDirectory(target);
            }

            // Change the current directory.
            Environment.CurrentDirectory = (target);
            if (path.Equals(Directory.GetCurrentDirectory()))
            {
                Console.WriteLine("You are in the temp directory.");
            }
            else
            {
                Console.WriteLine("You are not in the temp directory.");
            }
        }
        catch (Exception e)
        {
            Console.WriteLine("The process failed: {0}", e.ToString());
        }
    }
}
open System
open System.IO

try
    // Get the current directory.
    let path = Directory.GetCurrentDirectory()
    let target = @"c:\temp"
    printfn $"The current directory is {path}"
    if not (Directory.Exists target) then
        Directory.CreateDirectory target |> ignore

    // Change the current directory.
    Environment.CurrentDirectory <- target
    if path.Equals(Directory.GetCurrentDirectory()) then
        printfn "You are in the temp directory."
    else
        printfn "You are not in the temp directory."
with e ->
    printfn $"The process failed: {e}"
Imports System.IO

Public Class Test
    Public Shared Sub Main()
        Try
            ' Get the current directory.
            Dim path As String = Directory.GetCurrentDirectory()
            Dim target As String = "c:\temp"
            Console.WriteLine("The current directory is {0}", path)
            If Directory.Exists(target) = False Then
                Directory.CreateDirectory(target)
            End If
            ' Change the current directory.
            Environment.CurrentDirectory = (target)
            If path.Equals(Directory.GetCurrentDirectory()) Then
                Console.WriteLine("You are in the temp directory.")
            Else
                Console.WriteLine("You are not in the temp directory.")
            End If
        Catch e As Exception
            Console.WriteLine("The process failed: {0}", e.ToString())
        End Try
    End Sub
End Class

설명

현재 디렉터리가 프로세스가 시작된 디렉터리인 원래 디렉터리와는 다릅니다.

일반적인 I/O 작업 목록은 일반적인 I/O 작업을 참조하세요.

적용 대상

추가 정보