'************************************************************* 'Procedure: Public Method FichierExiste 'Parameters: strPath 'Description: Fonction qui retourne un boléan indiquant si un fichier existe ou pas 'By Théo on 04/2000 '************************************************************* Public Function ExistFile(strPath As String) As Boolean Dim fs As Object Dim blnFExiste As Boolean Set fs = CreateObject("Scripting.FileSystemObject") If Not (fs.FileExists(strPath)) Then blnFExiste = False Else blnFExiste = True End If ExistFile = blnFExiste End Function
Un peu lourd ...Public Function ExistFile(strPath As String) As Boolean Dim fs As Object Set fs = CreateObject("Scripting.FileSystemObject") ExistFile = fs.FileExists(strPath)End Functionvoilà... c + propre :)
le truc c'est justement l'utilisation des FileSystemObject...donc, oui, dir$ c plus rapide (meilleur?). y'a pas photo.par contre ok avec matthieu, avec le recul c un code assez 'lourd'.mais bon, je l'ai ecris en 04/2000 comme vous pouvez le constater par vous memes. y'a un p'tit bout de chemin qui s'est fait depuis ;)bon code. theo.
Slt,Quand j'utilise Dir$ pour tester l'existence d'un fichier, j'ai un message d'erreur lorsque le fichier n'existe pas justement :<Bad file name or number>Dir$(Chemin) me génère ce message avec Chemin = chemin bidon vers un fichier ou lecteur inexistant.Normalement, il devrait retourner un String vide "" non?Kim
Merci Matthieu d'avoir pris 'la peine' d'avoir simplifié le code, qui, au passage, est une bonne optimisation le faite de recuperer le boolean de cette maniere.Lightness: ce genre de commentaire, on s'en passe volontier. Le but ici est (je le rappelle car y'a des gens qui ont un boulet a la place du cerveau): 1/ utilisation du FileSystemObject 2/ Fonction sur laquelle on a la main.Je suis heureux d'apprendre - à nouveau - que Dir$ est plus simple et patati et patata ... Mais pourquoi faire simple quand on peut faire compliqué? Surtout si on est payé pour ...LoL; je fini par croire que ce sont des gens comme toi qui sont simples ... Allez, bon coding!!"Deux choses sont infinies, l'univers et la betise humaine. Mais en ce qui concerne l'univers, je n'en ai pas encore acquis la certitude absolue" - A. Einstein.
kiminox > Je me trouve sur le meme probleme que toi. Si par hazard, tu as trouvé une alternetive (hors FSO) je suis preuneur ;)
Très simple .. un Dir$ avec une gestion d'erreurs (on error). Ca c'est l'alternative... à savoir si c'est plus simple, je répond non.
FSO à proscrire pour ce genre de mini traitements.... acceptable uniquement en VBSPublic Function IsFileExisting(ByRef Path As String) As Boolean IsFileExisting = (GetFileAttributes(Path) <> INVALID_FILE_ATTRIBUTES)End Function
+ simple...If System.IO.File.Exists(MonFichier) Then ...
plus simple que quoi ?ne mélange pas tout, ici, c'est une source en VB6, tu propose un code 'plus simple' mais en .Net...
Salut à tous et merci, mais j'ai retrouvé un vieux code qui marche bien et plus "rapide", je code en VB5 sur un portable qui a plus de 15 ans et sous W95 (donc il faut optimiser le code, surtout quand on fait une moulinette) :Function FileExists(FileName As String) As Boolean On Error GoTo ErrorHandler FileExists = (GetAttr(FileName) And vbDirectory) = 0 GoTo No_ErrorErrorHandler: FileExists = FalseNo_Error:End FunctionCa permet également de ne pas renvoyer true sur un répertoire...
Se souvenir du profil
Mot de passe oublié ? / Activation de compteCréer un compte
1 975 715 membres 20 nouveaux aujourd'hui 16 318 membres club