Je travaille sur quelque chose qui nécessite de traverser le système de fichiers et pour tout chemin donné, j'ai besoin de savoir à quel point je suis dans la structure des dossiers. Voici ce que je suis en train d'utiliser:C# La meilleure façon d'obtenir la profondeur du dossier pour un chemin donné?
int folderDepth = 0;
string tmpPath = startPath;
while (Directory.GetParent(tmpPath) != null) {
folderDepth++;
tmpPath = Directory.GetParent(tmpPath).FullName;
}
return folderDepth;
Cela fonctionne mais je soupçonne qu'il existe un moyen meilleur/plus rapide? Beaucoup obligé pour tout commentaire.
Comme l'idée beaucoup! Juste une note rapide, la longueur est une propriété pas une méthode. – BFree
Oups, bon point; Je vais éditer cela ... –
Serait cassé pour des séquences autrement valides telles que C: \ Folder \ .. \ boot.ini. Ou, pour les chemins réseau UNC tels que \\ serveur \ partage \ fichier. Et, vous devez probablement utiliser Path.DirectorySeperatorCharacter et Path.AltDirectorySeperatorCharacter. –