Voici le code:Pourquoi je reçois ArgumentException?
t = Environment.GetEnvironmentVariable("UserProfile")+"\\documents";
string[] txtfiles = Directory.GetFiles(t, "*.txt",SearchOption.AllDirectories);
var textfiles = txtfiles.SelectMany(x => Directory.GetFiles(t, x));
Je veux obtenir tous les fichiers texte à partir du répertoire des documents et tous les sous-répertoires. Avant que j'ai fait cela change le code était:
string[] txtfiles = Directory.GetFiles(t, "*.txt",SearchOption.AllDirectories);
Et cela a fonctionné.
Mais j'ai fait ces changements puisque je veux plus tard obtenir la taille du répertoire et d'autres choses. Le problème est que sur la ligne:
var textfiles = txtfiles.SelectMany(x => Directory.GetFiles(t, x));
Je reçois l'exception:
Second path fragment must not be a drive or UNC name
La variable t contient: C: \ Users \ bout0_000 \ documents Les variables x contiennent: C : \ Users \ bout0_000 \ documents \ 3DMark \ 3dmarkerror.txt
Alors pourquoi avant que cela fonctionne et après les modifications que j'ai faites dans le code, je reçois une exception?
Vous appelez 'Directory.GetFiles' sur un nom de fichier (txt) pas un répertoire –
grâce travail. – DanielVest
'Je veux plus tard obtenir la taille du répertoire et d'autres choses 'Je pense que si vous demandiez ce que vous voulez vraiment faire, vous obtiendrez de meilleures réponses. http://www.perlmonks.org/?node_id=542341 – I4V