Savoir si un fichier est un répertoire [Résolu]

NarqoArts 23 Messages postés lundi 18 avril 2016Date d'inscription 25 avril 2016 Dernière intervention - 25 avril 2016 à 14:05 - Dernière réponse : Whismeril 12030 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 22 septembre 2018 Dernière intervention
- 25 avril 2016 à 16:51
Bonjour,
J'espère que vous allez bien ! :)
Alors voilà j'ai un petit problème .
Je conçois un programme qui vas me permettre de corriger le contenue d'un dossier en fonction du type de fichier stocker à l'intérieur. Pour cela j'ai utilisé les regex et je suis parvenue à interdire tout type de fichiers sauf 3 d'entres eux.
Pour l'instant tout est niquel mais je me suis demandé , en voulant améliorer mon programme , si c'était possible d'utiliser une regex pour interdire les sous dossiers ? :)

Mon programme se présente de la forme suivante :




Une TextBox : On insère le chemin du dossier à corriger
Un Bouton : Qui à l'aide de regex "corrige"
Un Bouton : Qui supprime le dossier
Un Bouton : Qui archive le dossier
Une ListBox1 : qui affiche tout les fichiers qui sont validé par la regex
Une ListBox2 : Qui affiche tout les fichiers qui ne sont pas validé par la regex
Afficher la suite 

Votre réponse

8 réponses

Whismeril 12030 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 22 septembre 2018 Dernière intervention - 25 avril 2016 à 14:54
0
Merci
Planter tout un décors n'est pas toujours utile.
Ce qu'il te faudrait c'est aller à l'essentiel.
Quelque part que ton chemin, vienne d'openfildialog, ou d'un bouton, d'un textbox on s'en moque.
Ce qui pourrait importer, c'est de savoir si on a un chemin tout d'un coup ou s'il faut le composer.

Les regex sont des outils de texte, valider un chemin de dossier, le nom d'un fichier, une extension, OK
Mais
de corriger le contenue d'un dossier en fonction du type de fichier stocker à l'intérieur.
ça ne veut pas dire grand chose.
Ce qui serait explicite, c'est:
"mon dossier contient des relevés de compte de la banque truc pour 2016, je voudrais qu'il s'appelle: 2016 relevés Truc"
ou alors
"il contient des xls, doc et pdf de mars 2016, et je voudrais qu'il s'appelle Mes Rapports 2016"
Ou je ne sais quoi d'autre

Commenter la réponse de Whismeril
NarqoArts 23 Messages postés lundi 18 avril 2016Date d'inscription 25 avril 2016 Dernière intervention - 25 avril 2016 à 15:06
0
Merci
Re,
Mon dossier contenient des fichiers qui s'apelle genre : 52535_ZONEDECHAMGEMENT_BRETELLES et je veux que se soit que des fichiers, pas des sous dossiers.
vb95 1663 Messages postés samedi 11 janvier 2014Date d'inscriptionContributeurStatut 21 septembre 2018 Dernière intervention - 25 avril 2016 à 15:34
Bonjour
J'ose espérer que tu saches faire la différence entre un répertoire ( que tu appelles dossier) et un fichier !
Un répertoire n'est jamais qu'un fichier spécial qui contient des fichiers et des répertoires ( appelés souvent sous-répertoires dans ce cas)
Maintenant le fait qu'un sous-dossier comme tu dis devienne un fichier sache que pour Windows c'est déjà le cas ! Et à moins que je me trompe un répertoire reste un répertoire ( c'est un conteneur )
Quant à appliquer un Regex sur les sous-dossiers je ne vois aucune raison qui fasse que ce soit impossible : c'est une chaine de caractères comme les noms de fichiers !
Si tu expliquais clairement ce que tu veux faire ce serait bien plus simple

Salut à Whismeril en même temps
NarqoArts 23 Messages postés lundi 18 avril 2016Date d'inscription 25 avril 2016 Dernière intervention - 25 avril 2016 à 15:39
Arrêter de me prendre pour un imbécile s'il vous plaît , je sais et connais la différence entre un répertoire et un fichier .
Ce que j'aimerais pouvoir faire justement , c'est créer une regex qui elle fasse la différence entre un répertoire et un fichier .
J'aimerais que ma regex détecte un répertoire si il y a n'a un.
Merci
vb95 1663 Messages postés samedi 11 janvier 2014Date d'inscriptionContributeurStatut 21 septembre 2018 Dernière intervention > NarqoArts 23 Messages postés lundi 18 avril 2016Date d'inscription 25 avril 2016 Dernière intervention - 25 avril 2016 à 15:47
1) Je ne t'ai jamais pris pour un imbécile mais cette phrase "je veux que se soit que des fichiers, pas des sous dossiers." me laisse perplexe !
2) Pour savoir si un fichier est un répertoire ou non une recherche sur le Net me donne la solution très facilement ( rien à voir avec les Regex ) : https://msdn.microsoft.com/fr-fr/library/system.io.directory.exists%28v=vs.110%29.aspx
NarqoArts 23 Messages postés lundi 18 avril 2016Date d'inscription 25 avril 2016 Dernière intervention - 25 avril 2016 à 15:53
Merci ! :)
vb95 1663 Messages postés samedi 11 janvier 2014Date d'inscriptionContributeurStatut 21 septembre 2018 Dernière intervention > NarqoArts 23 Messages postés lundi 18 avril 2016Date d'inscription 25 avril 2016 Dernière intervention - 25 avril 2016 à 16:12
De rien !
Commenter la réponse de NarqoArts
Whismeril 12030 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 22 septembre 2018 Dernière intervention - Modifié par Whismeril le 25/04/2016 à 16:52
0
Merci
@NarqoArts

1) Je ne t'ai jamais pris pour un imbécile mais cette phrase "je veux que se soit que des fichiers, pas des sous dossiers." me laisse perplexe !


Franchement quand j'ai lu ta réponse, je me suis fait le même genre de réflexion que VB95 (que je salue à mon tour).

Ici, comme pour tes présentes questions, essaye de bien cerner ton besoin, pour exprimer correctement ta question.

On en est à 7 réponses ou commentaires (8 avec celui-là) alors que correctement exprimé dès le début je t'aurais donné le même lien que VB ainsi que les deux suivants
https://msdn.microsoft.com/fr-fr/library/system.io.directory.getdirectories(v=vs.110).aspx
et
https://msdn.microsoft.com/fr-fr/library/system.io.directory.getfiles(v=vs.110).aspx

Qui peuvent aussi répondre à ton besoin de façon différente.

Et comme je te l'ai dit dans une autre discussion, si tu commençais par apprendre les bases de VB.Net tu perdrais moins de temps au final, car pour l'instant chacune de tes questions entre dans le cadre des bases.
http://plasserre.developpez.com/cours/vb-net/

Quand j'étais petit, la mer Morte n'était que malade.
George Burns
Commenter la réponse de Whismeril

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.