Path.DirectorySeparatorChar Feld
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt ein plattformspezifisches Zeichen bereit, das zum Trennen von Verzeichnisebenen in einer Pfadzeichenfolge verwendet wird, die eine hierarchische Dateisystemorganisation widerspiegelt.
public: static initonly char DirectorySeparatorChar;
public static readonly char DirectorySeparatorChar;
staticval mutable DirectorySeparatorChar : char
Public Shared ReadOnly DirectorySeparatorChar As Char
Feldwert
Beispiele
Im folgenden Beispiel werden Path Feldwerte auf Windows und auf Unix-basierten Systemen angezeigt. Beachten Sie, dass Windows entweder den Schrägstrich (der vom Feld AltDirectorySeparatorChar) oder den umgekehrten Schrägstrich (der vom Feld DirectorySeparatorChar) zurückgegeben wird, als Pfadtrennzeichen unterstützt, während Unix-basierte Systeme nur den Schrägstrich unterstützen.
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
Hinweise
AltDirectorySeparatorChar und DirectorySeparatorChar sind beide gültig, um Verzeichnisebenen in einer Pfadzeichenfolge zu trennen.
Wenn Sie .NET Core verwenden, um Anwendungen zu entwickeln, die auf mehreren Plattformen ausgeführt werden:
Wenn Sie das Verzeichnistrennzeichen lieber hart codieren möchten, sollten Sie den Schrägstrich (
/) verwenden. Es ist das einzige erkannte Verzeichnistrennzeichen auf Unix-Systemen, wie die Ausgabe aus dem Beispiel zeigt, und ist die AltDirectorySeparatorChar auf Windows.Verwenden Sie die Zeichenfolgenverkettung, um das Pfadtrennzeichen zur Laufzeit dynamisch abzurufen und in Dateisystempfade zu integrieren. Beispiel:
separator = Path.DirectorySeparatorChar; path = $"{separator}users{separator}user1{separator}";separator = Path.DirectorySeparatorChar path = $"{separator}users{separator}user1{separator}"Sie können den Wert auch aus der eigenschaft AltDirectorySeparatorChar abrufen, da er sowohl auf Windows- als auch auf Unix-basierten Systemen identisch ist.
Abrufen der AltDirectorySeparatorChar Eigenschaft
Wenn Ihre Anwendung nicht plattformübergreifend ist, können Sie das für Ihr System geeignete Trennzeichen verwenden.