Path.DirectorySeparatorChar 필드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
계층적 파일 시스템 구조를 반영하는 경로 문자열에서 디렉터리 수준을 구분하는 데 사용되는 플랫폼 특정 문자를 제공합니다.
public: static initonly char DirectorySeparatorChar;
public static readonly char DirectorySeparatorChar;
staticval mutable DirectorySeparatorChar : char
Public Shared ReadOnly DirectorySeparatorChar As Char
필드 값
예제
다음 예제에서는 Windows 및 Unix 기반 시스템에서 필드 값을 표시 Path 합니다. Windows는 슬래시(필드에서 반환 AltDirectorySeparatorChar 됨) 또는 백슬래시(필드에서 반환 DirectorySeparatorChar 됨)를 경로 구분 기호 문자로 지원하지만 Unix 기반 시스템은 슬래시만 지원합니다.
using System;
using System.IO;
class Program
{
static void Main()
{
Console.WriteLine($"Path.DirectorySeparatorChar: '{Path.DirectorySeparatorChar}'");
Console.WriteLine($"Path.AltDirectorySeparatorChar: '{Path.AltDirectorySeparatorChar}'");
Console.WriteLine($"Path.PathSeparator: '{Path.PathSeparator}'");
Console.WriteLine($"Path.VolumeSeparatorChar: '{Path.VolumeSeparatorChar}'");
var invalidChars = Path.GetInvalidPathChars();
Console.WriteLine($"Path.GetInvalidPathChars:");
for (int ctr = 0; ctr < invalidChars.Length; ctr++)
{
Console.Write($" U+{Convert.ToUInt16(invalidChars[ctr]):X4} ");
if ((ctr + 1) % 10 == 0) Console.WriteLine();
}
Console.WriteLine();
}
}
// The example displays the following output when run on a Windows system:
// Path.DirectorySeparatorChar: '\'
// Path.AltDirectorySeparatorChar: '/'
// Path.PathSeparator: ';'
// Path.VolumeSeparatorChar: ':'
// Path.GetInvalidPathChars:
// U+007C) U+0000) U+0001) U+0002) U+0003) U+0004) U+0005) U+0006) U+0007) U+0008)
// U+0009) U+000A) U+000B) U+000C) U+000D) U+000E) U+000F) U+0010) U+0011) U+0012)
// U+0013) U+0014) U+0015) U+0016) U+0017) U+0018) U+0019) U+001A) U+001B) U+001C)
// U+001D) U+001E) U+001F)
//
// The example displays the following output when run on a Linux system:
// Path.DirectorySeparatorChar: '/'
// Path.AltDirectorySeparatorChar: '/'
// Path.PathSeparator: ':'
// Path.VolumeSeparatorChar: '/'
// Path.GetInvalidPathChars:
// U+0000
Imports System.IO
Module Program
Sub Main()
Console.WriteLine($"Path.DirectorySeparatorChar: '{Path.DirectorySeparatorChar}'")
Console.WriteLine($"Path.AltDirectorySeparatorChar: '{Path.AltDirectorySeparatorChar}'")
Console.WriteLine($"Path.PathSeparator: '{Path.PathSeparator}'")
Console.WriteLine($"Path.VolumeSeparatorChar: '{Path.VolumeSeparatorChar}'")
Dim invalidChars = Path.GetInvalidPathChars()
Console.WriteLine($"Path.GetInvalidPathChars:")
For ctr As Integer = 0 To invalidChars.Length - 1
Console.Write($" U+{Convert.ToUInt16(invalidChars(ctr)):X4} ")
if (ctr + 1) Mod 10 = 0 Then Console.WriteLine()
Next
Console.WriteLine()
Console.WriteLine("Hello World!")
End Sub
End Module
' The example displays the following output when run on a Windows system:
' Path.DirectorySeparatorChar: '\'
' Path.AltDirectorySeparatorChar: '/'
' Path.PathSeparator: ';'
' Path.VolumeSeparatorChar: ':'
' Path.GetInvalidPathChars:
' U+007C) U+0000) U+0001) U+0002) U+0003) U+0004) U+0005) U+0006) U+0007) U+0008)
' U+0009) U+000A) U+000B) U+000C) U+000D) U+000E) U+000F) U+0010) U+0011) U+0012)
' U+0013) U+0014) U+0015) U+0016) U+0017) U+0018) U+0019) U+001A) U+001B) U+001C)
' U+001D) U+001E) U+001F)
'
' The example displays the following output when run on a Linux system:
' Path.DirectorySeparatorChar: '/'
' Path.AltDirectorySeparatorChar: '/'
' Path.PathSeparator: ':'
' Path.VolumeSeparatorChar: '/'
' Path.GetInvalidPathChars:
' U+0000
설명
AltDirectorySeparatorChar 및 DirectorySeparatorChar
는 모두 경로 문자열에서 디렉터리 수준을 구분하는 데 유효합니다.
.NET Core를 사용하여 여러 플랫폼에서 실행되는 애플리케이션을 개발하는 경우:
디렉터리 구분 기호 문자를 하드 코딩하려면 슬래시(
/
) 문자를 사용해야 합니다. 예제의 출력과 같이 Unix 시스템에서 유일하게 인식되는 디렉터리 구분 기호 문자이며 Windows의 입니다 AltDirectorySeparatorChar .문자열 연결을 사용하여 런타임에 경로 구분 기호 문자를 동적으로 검색하고 파일 시스템 경로에 통합합니다. 예를 들면 다음과 같습니다.
separator = Path.DirectorySeparatorChar; path = $"{separator}users{separator}user1{separator}";
separator = Path.DirectorySeparatorChar path = $"{separator}users{separator}user1{separator}"
Windows 및 Unix 기반 시스템에서 모두 동일하므로 속성에서 AltDirectorySeparatorChar 값을 검색할 수도 있습니다.
애플리케이션이 플랫폼 간이 아닌 경우 시스템에 적합한 구분 기호를 사용할 수 있습니다.
적용 대상
추가 정보
.NET