107 votes

Comment trouver le répertoire parent en C# ?

J'utilise ce code pour trouver le répertoire de débogage

 public string str_directory = Environment.CurrentDirectory.ToString();

"C:\\Users\\Masoud\\Documents\\Visual Studio 2008\\Projects\\MyProj\\MyProj\\bin\\Debug"

Comment puis-je trouver le dossier parent comme indiqué ci-dessous ?

"C:\\Users\\Masoud\\Documents\\Visual Studio 2008\\Projects\\MyProj\\MyProj"

143voto

Sylence Points 1138

Vous pouvez utiliser System.IO.Directory.GetParent() pour récupérer le répertoire parent d'un répertoire donné.

54voto

billinkc Points 23616
string parent = System.IO.Directory.GetParent(str_directory).FullName;

Voir BOL

40voto

Si vous ajoutez ..\.. à votre chemin existant, le système d'exploitation parcourra correctement le dossier grand-parent.

Cela devrait faire l'affaire :

 System.IO.Path.Combine("C:\\Users\\Masoud\\Documents\\Visual Studio 2008\\Projects\\MyProj\\MyProj\\bin\\Debug", @"..\..");

Si vous parcourez ce chemin, vous parcourrez le répertoire grand-parent.

11voto

Jay Riggs Points 30783

Pour obtenir un répertoire 'grand-parent', appelez Directory.GetParent() deux fois :

 var gparent = Directory.GetParent(Directory.GetParent(str_directory).ToString());

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X