Il semble que vous avez un répertoire racine commune:
/home/XXX/Documents/Users
et que vous voulez ajouter des sous-répertoires à partir de là. Si tel est le cas et si l'objectif est d'avoir uniquement pour référencer les sous-répertoires, alors j'aller avec @ l'approche de ColinM, mais modifier légèrement comme suit:
private static void CreateDirectories(string directoryRoot, params string[] directories)
{
foreach (string directory in directories)
{
Directory.CreateDirectory(Path.Combine(directoryRoot, directory));
}
}
Maintenant, quand vous l'appelez, vous seulement besoin de mentionner la racine une fois
CreateDirectories("/home/XXX/Documents/Users", "Pepe/datos/", "Juan");
la bonne chose à propos Path.Combine
est que vous n'avez pas à vous soucier d'avoir une barre oblique /
qui est soit dans la traîne directoryRoot
ou de premier plan dans l'un des directories
--il s'assurera qu'il est correctement formaté à la fin.
Bien sûr, si vous adoptez cette approche, vous devrez décider ce qui se passe si directories
est null - créez-vous le directoryRoot (en supposant qu'il ne soit pas déjà là), jetez-vous une erreur, ou faites-vous vous venez de revenir?
Non. Mais quel est le problème avec la façon dont vous l'avez? –
vous devez utiliser la méthode CreateDirectory chaque fois que vous devez créer un répertoire. Ce n'est pas fini, quel est le problème? – LONG
Si cela ne vous convient pas, créez une méthode statique qui accepte un tableau de répertoires sous forme de chaîne et l'utilise comme méthode pratique. c'est à dire. 'public static void CreateDirs (params chaîne [] dirPaths) {/ * boucle sur tableau et créer des répertoires * /}' – Igor