Path.GetDirectoryName Méthode

Définition

Surcharges

GetDirectoryName(String)

Retourne les informations de répertoire pour le chemin spécifié.

GetDirectoryName(ReadOnlySpan<Char>)

Renvoie les informations relatives au répertoire pour le chemin spécifié représenté par une étendue de caractères.

GetDirectoryName(String)

Source:
Path.cs
Source:
Path.cs
Source:
Path.cs

Retourne les informations de répertoire pour le chemin spécifié.

public:
 static System::String ^ GetDirectoryName(System::String ^ path);
public static string GetDirectoryName (string path);
public static string? GetDirectoryName (string? path);
static member GetDirectoryName : string -> string
Public Shared Function GetDirectoryName (path As String) As String

Paramètres

path
String

Chemin d’accès d’un fichier ou d’un répertoire.

Retours

Informations relatives au répertoire pour path, ou null si path indique un répertoire racine ou est null. Retourne un élément Empty si path ne contient pas d'informations relatives au répertoire.

Exceptions

Versions .NET Framework et .NET Core antérieures à 2.1 : le path paramètre contient des caractères non valides, est vide ou contient uniquement des espaces blancs.

Le paramètre path est plus long que la longueur maximale définie par le système.

Remarque : Dans .NET pour les applications du Windows Store ou la bibliothèque de classes portable, interceptez l’exception de la classe de base, IOException, à la place.

Exemples

L’exemple suivant illustre l’utilisation de la GetDirectoryName méthode sur une plateforme de bureau Windows.

String^ filePath = "C:\\MyDir\\MySubDir\\myfile.ext";
String^ directoryName;
int i = 0;

while (filePath != nullptr)
{
    directoryName = Path::GetDirectoryName(filePath);
    Console::WriteLine("GetDirectoryName('{0}') returns '{1}'",
        filePath, directoryName);
    filePath = directoryName;
    if (i == 1)
    {
        filePath = directoryName + "\\";  // this will preserve the previous path
    }
    i++;
}
/*
This code produces the following output:

GetDirectoryName('C:\MyDir\MySubDir\myfile.ext') returns 'C:\MyDir\MySubDir'
GetDirectoryName('C:\MyDir\MySubDir') returns 'C:\MyDir'
GetDirectoryName('C:\MyDir\') returns 'C:\MyDir'
GetDirectoryName('C:\MyDir') returns 'C:\'
GetDirectoryName('C:\') returns ''
*/
string filePath = @"C:\MyDir\MySubDir\myfile.ext";
string directoryName;
int i = 0;

while (filePath != null)
{
    directoryName = Path.GetDirectoryName(filePath);
    Console.WriteLine("GetDirectoryName('{0}') returns '{1}'",
        filePath, directoryName);
    filePath = directoryName;
    if (i == 1)
    {
        filePath = directoryName + @"\";  // this will preserve the previous path
    }
    i++;
}
/*
This code produces the following output:

GetDirectoryName('C:\MyDir\MySubDir\myfile.ext') returns 'C:\MyDir\MySubDir'
GetDirectoryName('C:\MyDir\MySubDir') returns 'C:\MyDir'
GetDirectoryName('C:\MyDir\') returns 'C:\MyDir'
GetDirectoryName('C:\MyDir') returns 'C:\'
GetDirectoryName('C:\') returns ''
*/
Dim filepath As String = "C:\MyDir\MySubDir\myfile.ext"
Dim directoryName As String
Dim i As Integer = 0

While filepath <> Nothing
    directoryName = Path.GetDirectoryName(filepath)
    Console.WriteLine("GetDirectoryName('{0}') returns '{1}'", _
        filepath, directoryName)
    filepath = directoryName
    If i = 1 Then
       filepath = directoryName + "\"  ' this will preserve the previous path
    End If
    i = i + 1
End While

'This code produces the following output:
'
' GetDirectoryName('C:\MyDir\MySubDir\myfile.ext') returns 'C:\MyDir\MySubDir'
' GetDirectoryName('C:\MyDir\MySubDir') returns 'C:\MyDir'
' GetDirectoryName('C:\MyDir\') returns 'C:\MyDir'
' GetDirectoryName('C:\MyDir') returns 'C:\'
' GetDirectoryName('C:\') returns ''

Remarques

Dans la plupart des cas, la chaîne retournée par cette méthode se compose de tous les caractères du chemin d’accès jusqu’au dernier caractère de séparateur de répertoire, mais pas inclus. Un caractère séparateur de répertoire peut être ou DirectorySeparatorCharAltDirectorySeparatorChar. Si le chemin d’accès se compose d’un répertoire racine, tel que « c:\ », null est retourné.

Cette méthode ne prend pas en charge les chemins d’accès utilisant « file: ».

Étant donné que le chemin d’accès retourné n’inclut pas le ou les derniers caractères de séparateur de répertoires, le passage du chemin d’accès retourné dans la GetDirectoryName méthode tronque un niveau de dossier par appel suivant sur le chemin d’accès de résultat. Par exemple, le passage du chemin « C:\Directory\SubDirectory\test.txt » dans GetDirectoryName renvoie « C:\Directory\SubDirectory ». Le passage de ce chemin d’accès, « C:\Directory\SubDirectory », dans GetDirectoryName renvoie « C:\Directory ».

Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches courantes d’E/S.

Voir aussi

S’applique à

GetDirectoryName(ReadOnlySpan<Char>)

Source:
Path.cs
Source:
Path.cs
Source:
Path.cs

Renvoie les informations relatives au répertoire pour le chemin spécifié représenté par une étendue de caractères.

public:
 static ReadOnlySpan<char> GetDirectoryName(ReadOnlySpan<char> path);
public static ReadOnlySpan<char> GetDirectoryName (ReadOnlySpan<char> path);
static member GetDirectoryName : ReadOnlySpan<char> -> ReadOnlySpan<char>
Public Shared Function GetDirectoryName (path As ReadOnlySpan(Of Char)) As ReadOnlySpan(Of Char)

Paramètres

path
ReadOnlySpan<Char>

Chemin d’accès à partir duquel récupérer les informations de répertoire.

Retours

Informations de répertoire pour path, ou une plage vide si path est null, une étendue vide ou une racine (telle que \, C:, ou \\server\share).

Remarques

Contrairement à la surcharge de chaîne, cette méthode ne normalise pas les séparateurs de répertoires.

Voir aussi

S’applique à