cs_veler
Messages postés723Date d'inscriptiondimanche 26 novembre 2006StatutMembreDernière intervention23 janvier 2013
-
29 avril 2007 à 21:44
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 2011
-
30 avril 2007 à 19:13
Bonjours, je cherche à supprimer un chaine de caractères sachant que je connais cette chaine.
exemple:
j'ai la chaine suivante:
C:\MonDossier\MonFichier
je veut supprimer par exemple:
C:\MonDossier\
Euh, je pense que l'exemple n'était pas vraiment nessecaire.
ptit_tof57
Messages postés79Date d'inscriptionlundi 28 août 2006StatutMembreDernière intervention 4 avril 20091 29 avril 2007 à 21:59
Salut tu peux le faire en mettant cette chaine dans une variable que l'on va appelé VarChaine, donc si on résume :
Private Sub test()
Dim VarChaine As String = "C:\MonDossier\MonFichier"
MessageBox.Show(VarChaine.Remove(0, 14)) 'Ici la méthode utilisée est Remove le premier chiffre correspond a l'index de départ et le deuxieme
au l'index de fin des caractères a supprimé.
cs_veler
Messages postés723Date d'inscriptiondimanche 26 novembre 2006StatutMembreDernière intervention23 janvier 20132 29 avril 2007 à 22:03
Ok, zut, j'ai pas préçisé que la chaine que l'on connais provient d'un textebox, donc c'est pas possible d'utiliser les nombres de caractère, mais sa m'a donné une idée, je vais plutôt essayer de remplacer la chaine.
ptit_tof57
Messages postés79Date d'inscriptionlundi 28 août 2006StatutMembreDernière intervention 4 avril 20091 29 avril 2007 à 22:08
avec la propriété length de VarChaine tu peux obtenir la longeur de la chaine provenant de la textbox si ça peut t'aidé. Sinon je pense peut etre qu'il faudrais te tourné vers les expressions regulière mais la je ne peux pas t'aidé à ce sujet. Bon courage.
A+
Tof
ptit_tof57
Messages postés79Date d'inscriptionlundi 28 août 2006StatutMembreDernière intervention 4 avril 20091 29 avril 2007 à 22:24
Je viens de faire une recherche de ces méthode dans l'explorateur d'objet et elles semble être présentent. Mais peut être par soucis de compatibilité entre les deux version.
ptit_tof57
Messages postés79Date d'inscriptionlundi 28 août 2006StatutMembreDernière intervention 4 avril 20091 29 avril 2007 à 22:24
Je viens de faire une recherche de ces méthode dans l'explorateur d'objet et elles semble être présentent. Mais peut être par soucis de compatibilité entre les deux version.
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 30 avril 2007 à 02:20
Bah je fais pas encore du DotNet, mais c'était pas loin.
Suffit de tester... ça m'a pris 2 minutes, maintenant, il se peut que ce ne soit pas la meilleure façon de procéder, mais ça fonctionne :
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Mot1, Mot2 As String
Mot1 = "C:\Chemin\Nom fichier.ext"
Mot2 = Strings.Right(Mot1, Strings.Len(Mot1) - Strings.InStrRev(Mot1, ""))
MessageBox.Show(Mot2)
End Sub
End Class
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 30 avril 2007 à 09:43
LEs fonctions Len, left, .... sont toujours présente dans VB2005, car la référence Microsoft.VisualBasic est intégrée dans le projet.
Cette référence n'est là que pour assurer une certaine compatibilité avec VB6 et permet d'une certaine façon du faire du code "VB6" sous VB2005.
Je ne saurais trop te conseiller de décocher cette référence (dans les propriétés du projet) pour t'obliger à faire du code .Net et ainsi définitivement te débarasser du dinosaure VB6. Car si tu veux faire du code VB6, tu ne trouveras pas plus performant et adapté que VB6 lui-même.
Pour ce qui est des fonctions de manipulation des chaines, tout est intégré dans la classe String. Ainsi
InStr devient String.IndexOf
InStrRev devient String.LastIndexOf
Len devient String.Lenght
Mid devient String.SubString
Quant à Left et Right, n'étant que des surcharges de Mid, même en VB6, elles n'existent plus, mais sont remplaçables par SubString (puisque remplaçable par Mid en VB6).
---- Sevyc64 (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
cs_veler
Messages postés723Date d'inscriptiondimanche 26 novembre 2006StatutMembreDernière intervention23 janvier 20132 30 avril 2007 à 18:49
Salut, le VB.Net, c'est maintenant mieu que le VB6 surtout depuis qu'on sait que c'est compatible Vista.
Alors, En fait, pourquoi je veut trouver un code pour supprimer une partie d'une chaine, c'est parce que j'ai un code qui liste les fichiers et répertoires d'un répèrtoire racine et affiche sa dans un Treeview. Et, je ne veut pas qu'on voit le chemin complet du dossier.