Nom de mon fichier son l'extension

scromania Messages postés 452 Date d'inscription dimanche 20 août 2006 Statut Membre Dernière intervention 11 janvier 2013 - 18 mai 2009 à 17:41
PROTEUS91 Messages postés 156 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 28 décembre 2010 - 19 mai 2009 à 11:35
bonjour,


je n'arrive pasà récuperer le nom de mon fichier son l'extension

c:\test.txt
je souhaiterais récupérer que "test"

Comme puis-je procéder ?

merci

5 réponses

Tyrell2 Messages postés 251 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 2 novembre 2010
18 mai 2009 à 21:14
bonsoir,

pour enlever l'extension :

Dim nom1 as string = Strings.Replace("C:\test.txt", ".txt", Nothing)

Pour enlever le debut :

dim nom2 as string = Strings.Replace(nom1, "C:", Nothing)
The Meteorologist Messages postés 232 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 3 novembre 2011 1
18 mai 2009 à 21:29
Ou bien de cette manière ;) :
Dim monFichier As New IO.FileInfo("C:\test.txt")
Dim nomDuFichier = monFichier.Name.Replace(monFichier.Extension, String.Empty)

Simon
PROTEUS91 Messages postés 156 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 28 décembre 2010
18 mai 2009 à 23:17
Selon moi les deux methodes sont bonnes meme si je prefere la méthode de Simon, ce n'est pas pour te froisser Tyrell, mais avec ta solution si un jour il vient a boucler plusieur fichier qui ne sont pas du même repertoire il risquerai d'etre limité. A mon sens l'exemple de Simon sera utile plus longtemps.

++

(Simon, ne faut il pas ajouter la reference a Microsoft Script Runtime avec ta methode. Si oui Faudrai lui dire sinon il va se demander pourquoi ca ne marche pas. Sinon Bah Bah :p)

PROTEUS
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
19 mai 2009 à 09:00
PROTEUS91 ...

tu n'est pas familier avec .NET, me semble t'il.

On n'utilise la 'Microsoft Scripting Runtime' qu'avec des langages de script.

JAMAIS en VB6 (trop lent)
et JAMAIS en .NET (inutile)


Ces solutions ne sont pas convenables. On ne doit pas utiliser de Replace de la sorte.
Que se passera-t'il si on cherche a récuperer le nom du fichier:

mon_fichier_.txt_contient_du_texte.txt

on va saccager le nom...

ok, c'est un cas plus ou moins farfelu, mais c'est un bug possible


quoi qu'il en soit, inutile de s'embeter a jouer avec un String, le Framework dispose de tout un tas de choses pour manipuler les chemins :

Dim sPath As String = "C:\Dossier\mon_fichier_txt_contient_du_texte.txt"
Dim sNomDuFichier As String = IO.Path.GetFileNameWithoutExtension(sPath)

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

Posez votre question
PROTEUS91 Messages postés 156 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 28 décembre 2010
19 mai 2009 à 11:35
Effectivement je ne suis pas familier de .NET Merci pour l'info du Script Runtime

PROTEUS
Rejoignez-nous