cs_drahcir
Messages postés745Date d'inscriptionmardi 30 novembre 2004StatutMembreDernière intervention15 septembre 20094 31 juil. 2006 à 14:00
Tout à fait Renfield, j'ai juste mis le code pour récupérer l'extension. Mais c'est vrai que mon code va planter s'il n'y a aucun point dans la chaîne.
A rajouter donc :
If indexPoint <> -1 Then
extension = fichier.Substring(index) + 1
Else
MsgBox("blabla....")
End If
Molenn
Messages postés797Date d'inscriptionmardi 7 juin 2005StatutMembreDernière intervention23 février 20117 31 juil. 2006 à 12:21
2 solutions :
- On sait que l'extension est toujours du type ".xxx" soit 3 caractères.
On fait donc juste un Right(Chemin, 3) est hop, tu as ton extension.
- On n'en est pas sur justement de cette taille d'extension (il m'arrive de créer des extensions d'une taille supérieure quand je me fais des p'tits programmes donc, pourquoi pas) : C'est la même idée.
On cherche la position du dernier point dans le chemin avec la fonction InStrRev(Chemin, ".") qui donne la position du dernier caractère "point" de ton chemin.
Tu vas donc récupérer les caractères après ce point : la longueur à récupérer est len(chemin)-le chiffre remonté par InStrRev.
Et tu fais right(Chemin, chiffre).
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 31 juil. 2006 à 13:44
Molenn, on est en .Net. Oublie donc InstrRev & Co.
De plus, ta première affirmation est fausse :
<strike> On sait que l'extension est toujours du type ".xxx" soit 3 caractères.
On fait donc juste un Right(Chemin, 3) est hop, tu as ton extension.</strike>
drahcir, il faut tester le fait qu'un point ait bien été trouvé, et mieux placer le '+1'...
fichier.Substring(index) + 1
Renfield
Admin CodeS-SourceS- MVP Visual Basic
Vous n’avez pas trouvé la réponse que vous recherchez ?
Molenn
Messages postés797Date d'inscriptionmardi 7 juin 2005StatutMembreDernière intervention23 février 20117 31 juil. 2006 à 14:24
Heu Renfield, mon affirmation n'est pas fausse puisqu'on n'a pas assez de renseignements. Le sens que je donne à ce que j'ai écrit.
2 solutions :
- Hypothèse 1 : On sait que l'extension est toujours du type ".xxx" soit 3 caractères
=> Ca peut être le cas si allthew3 n'a besoin que de récupérer des extensions définies : par ex, il sait qu'il ne peut avoir que des fichiers .xls ou .doc dans un répertoire, pas besoin de chercher plus loin.
Fonction de ses besoins, on peut tout à fait partir là-dessus.
- Hypothèse 2 : blabla
Mais effectivement, je n'avais pas vu qu'on était dans la section vb.net et 2005 : les instructions que donnent drahcir ne fonctionnent pas en vba, ni en vb6 il me semble... Pour ça que je suis encore avec mon InStrRev et que je suis à côté de la plaque ^^