Separation du chemin et du nom de fichier

eric_piccaut Messages postés 7 Date d'inscription lundi 27 septembre 2004 Statut Membre Dernière intervention 6 octobre 2004 - 28 sept. 2004 à 00:46
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 28 sept. 2004 à 01:13
Bonjour !!
Merci de m"aider a resoudre ce probleme:
Entrex un chemin incluant un nom de fichier dans uen boite de texte.Lorsque la touche "Enter" est appuyée , le chemin apparait dans une etiquette et le nom du fichier dabs une autre étiquette.
Merci a+

1 réponse

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
28 sept. 2004 à 01:13
Salut eric_piccaut
Ce qui sépare le nom d'un fichier et des sous-répertoires, c'est le dernier signe \.
L'instruction InstrRev retrouve la place d'un caractère dans une chaine, mais en commençant par la fin (contrairement à Instr).
Le InstRev te renverra le chiffre correspondant à l'emplacement de ce caractère.
Position = InstrRev(Chaine, "")
Pour isoler les noms, tu n'as plus qu'à jouer avec l'instruction Left pour les sous-répertoires :
SousRép = Left(Chaine, Position)
et avec l'instruction Mid pour le nom du fichier :
NomFichier = Mid(Chaine, Position + 1)
le +1 étant la pour commencer au caractère qui suit le \ qui vient d'être trouvé.
Mais voilà : si la Chaine que tu vas lui fournir ne comporte pas de sous-répertoire, InstrRev va te retourner 0 (ou -1, je ne sais plus). Dans ce cas là, les instructions Left et Mid au dessus vont buguer (un argument = 0)
Pour éviter ça, il suffit de tester si Position a bien une valeur correcte :
If Position > 0 Then
SousRép = Left(Chaine, Position)
NomFichier = Mid(Chaine, Position + 1)
End If


Vala
Jack
0
Rejoignez-nous