Path.GetDirectoryName Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
.NET Framework et .NET Core versions 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 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 DirectorySeparatorChar ou AltDirectorySeparatorChar. 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 séparateurs de répertoires, le fait de renvoyer le chemin d’accès retourné à la GetDirectoryName méthode tronque un niveau de dossier par appel suivant sur le chemin d’accès du résultat. Par exemple, le passage du chemin « C:\Directory\SubDirectory\test.txt » dans GetDirectoryName retourne « C :\Directory\SubDirectory ». Le passage de ce chemin d’accès, « C :\Directory\SubDirectory », dans GetDirectoryName retourne « C :\Directory ».
Pour obtenir la liste des tâches d’E/S courantes, consultez Tâches d’E/S courantes.
Voir aussi
- Formats de chemin de fichier sur les systèmes Windows
- Fichier et flux de données E/S
- Procédure : lire le texte d’un fichier
- Procédure : écrire du texte dans un fichier
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 étendue 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.