Fichier existe?

Résolu
thetoto52 Messages postés 87 Date d'inscription lundi 9 janvier 2006 Statut Membre Dernière intervention 11 novembre 2008 - 11 avril 2006 à 20:27
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 11 avril 2006 à 23:17
Voila je voidrais savoir comment ont peut faire pour savoir si un fichier existe a un endroit pour eviter d'avor une ereur quand on vas essayer de l'ouvrir.

Merci d'avance pour votre aide

8 réponses

Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
11 avril 2006 à 20:45
ou alors ICI

Daniel
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
11 avril 2006 à 20:31
if Dir("Chemin_et_nom_complet_du_fichier) <> "" then
MsgBox "Le fichier existe"
else
MsgBox "Le fichier n'existe pas"
end if

<hr size="2" width="100%">
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
11 avril 2006 à 20:32
Salut
Facile :
-1- Tu vas dans la salle de bain
-2- Tu récupères une pince à épiler
-3- Tu arraches le poil que tu as dans la main
Une fois libéré, tu tapes "Fichier existe" dans la case "Rechercher" en haut de cette page et tu auras ta réponse.

Jette <STRIKE>un oeil</STRIKE> les deux yeux sur cette source d'information : clique ici

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
11 avril 2006 à 21:07
casy : un simple dir ne suffit pas, malheureusement !

Il faut passer par le gestionnaire d'erreur de VB en faisant par exemple :

On Error goto erreur

Dim iTaille As Integer

Let iTaille = FileLen(fichier)

exit sub

erreur:

'le fichier n'existe pas !

_
Avant de poster dans le forum,
prière d'aller lire ceci :
http://www.codes-sources.com/reglement.aspx
<s></s>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
11 avril 2006 à 21:24
C'est fort possible Dark, je dis pas le contraire.

Mais jusqu'à présent je me suis contenté d'un simple Dir et j'ai jamais eu de souci.
Mais j'ai aussi toujours cherché un fichier bien precis et connu à l'avance (fichier de conf par exemple). La seule condition est qu'il ne faut pas qu'il y ai un répertoire portant le même nom à la place car dans ce cas il faut faire un peu plus de code.
Autre problème aussi si tu ouvre le fichier en mode binaire pour une lecture, et qu'il fait 0 octet, là effectivement il faut ton code.
Ca m'est arrivé une fois, mais ça venais d'un bug de mon soft, mon fichier ne pouvais pas faire 0 octet en temps normal.

<hr size="2" width="100%">
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
11 avril 2006 à 21:27
eh eh, et il me semble aussi qu'il y a des bugs si le fichier est placé dans la corbeille ou un truc comme cà, je sais plus, j'avais obtenu des trucs très bizarre y'a une époque où je me fiais que sur le dir pour tester l'existance !

_
Avant de poster dans le forum,
prière d'aller lire ceci :
http://www.codes-sources.com/reglement.aspx
<s></s>
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
11 avril 2006 à 21:28
If 0 > GetFileAttributes(MoFichierOuDossier) Then ABSENT

Fonctionne à tout coup et pas de gestion d'erreur à mettre car l'API n'en produit jamais.

ciao...
BruNews, MVP VC++
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
11 avril 2006 à 23:17
Si question est .net et que .net fournit ce qu'il faut alors inutile d'appeler directement l'API, évident.

Si VB6: la fonction dir de VB est une antique daube qu'il convient d'oublier, c'est l'exemple même de la contre productivité pour savoir si un fichier existe. dir() retourne un String (appel du memory manager par SysAllocString pour construire un BSTR), je sais qu'il faut occuper le cpu mais à ce point d'inutilité....

ciao...
BruNews, MVP VC++
0
Rejoignez-nous