cs_jimmy69
Messages postés778Date d'inscriptiondimanche 22 décembre 2002StatutMembreDernière intervention27 novembre 2008
-
8 févr. 2006 à 09:52
cs_jimmy69
Messages postés778Date d'inscriptiondimanche 22 décembre 2002StatutMembreDernière intervention27 novembre 2008
-
8 févr. 2006 à 12:52
Bonjour a tous,
J'ai une application console ou je viens coller depuis une application windows un path en faisant un drag and drop !
je decompose ma chaine afin d'enlever les \ et autres " !
Ensuite je parcourre ma chaine et j'aimerais tester si c'est un repertoire ou un fichier mais cela ne va pas ma boucle s'arrete sur le premier element du tableau ! et je ne vois pas pourquoi !
voila ce que j'ai fait :
Console.WriteLine("Entrez votre chaine ?");
string chaine = Console.ReadLine();
char[] bad = {'"', '\\'};
string[] tableau = chaine.Split(bad);
int nb = tableau.Length;
Console.WriteLine("Nombre d'elements "+ nb);
for(
int i = 0; i< tableau.Length; i++)
{
if(tableau[i] !="")
{
DirectoryInfo isDir =
new DirectoryInfo(tableau[i]);
if(isDir.Exists)
Console.WriteLine("Element " + i +" "+ tableau[i]);
}
}
Si quelqu'un voye comment je peux faire pour arriver a tester sur une chaine (path) decompose si c'est un repertoire ou un fichier je suis preneur !
cs_coq
Messages postés6351Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 8 févr. 2006 à 10:47
Salut,
Je n'ai pas vraiment compris le cheminement du code mais :
- pour les caractères invalides d'un path, utilise Path.InvalidPathChars plutôt que ton propre tableau.
- pour savoir si il s'agit d'un répertoire ou d'un fichier, tu peux te servir de Path.GetFileName qui va retourner string.Empty si le chemin d'accès testé est celui d'un répertoire et non d'un fichier.
cs_jimmy69
Messages postés778Date d'inscriptiondimanche 22 décembre 2002StatutMembreDernière intervention27 novembre 20081 8 févr. 2006 à 11:20
hello,
Oui vous etez tres fort certes !
en gros voila ce que j'obtiens qd je drap en drop le chemin ds l'"application console !
"C:\Documents and Settings\All Users\Start Menu"
je supprime les " et les \
j'affiche donc
c:
documents and settings
etc...
je voudrais pouvoir a chaque tour de boucle verifier si c'est un repertoire !
mais ca ne va pas !
il s'arrete apres le premier elements teste par du tableau
if(tableau[i] !="")
{
DirectoryInfo isDir =
new DirectoryInfo(tableau[i]);
if(isDir.Exists)
Console.WriteLine("Element " + i +" "+ tableau[i]);
}
Je pense que je vasi devoir revoir mon code et faire comme ceci !
supprimer juste les "
et a chaque tour de bloucle concatener la racine donc c:\ avec le dossier ou fichier suivant !
Non !
Qu'en pensez vous !?
Je vous remercie deja pour votre rapidite et votre savoir ;-) !