Lister un fichier et remonter les noms des fichiers sous forme de variable en Vb

Messages postés
5
Date d'inscription
mardi 4 septembre 2007
Statut
Membre
Dernière intervention
2 février 2011
- - Dernière réponse : jrivet
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
- 7 nov. 2008 à 14:40
PS:


Langage utilise: VBS



Bonjour à tous,

Je souhaite ecrire un petit script capable d'aller lire une directory et de lister tous les fichiers par exemple de type: *.xmlout.

un exemple, dans le répertoire C:\SAMDEV\RECEPTIONS (Arrivée de fichiers venant d'implantations distantes, on a:

200810241556_MIE_Labuan_10242008.xmlout
200810311740_MIE_common_Hongkong_Private_10312008.xmlout
200810311740_MIE_local_Hongkong_Public_10312008.xmlout
200810311759_BANKMASTER_Mumbai_10312008.csv.xmlout
200811030701_MIE_Montreal_10312008.xmlout
200810280701_RTGS_Brasil_10272008.xmlout

Je souhaite faire:
 
1- un et recuperer le Nom applicatifMIE_Labuan pour le premier fichier, MIE_common_Hongkong_Private pour le second, MIE_local_Hongkong_Public pour le troisieme, BANKMASTER_Mumbai pour le quatrieme, MIE_Montreal pour le cinquieme et RTGS_Brasil pour le sixieme)

2- J'ai en fait besoin que ce nom soit remonté comme une variable de façon a l'utiliser dans la suite de mon script pour aller parser un fichier de configuration et remonter les lignes les lignes concernées vers un fichier parametre.

En un mot si on a 4 fichier, le but est de remonter le nom capturé du premier fichier, et ensuite celui du second ... jusqu'a la consommation de tous les fichiers (Qui sont deplaces a la fin des traitements qui suivent dans mon programme deja fait).

Je souhaite faire ce script en VBS

NB: Si vous ne' comprenez pas et souhaitez que je sois plus explicite, ne pas hesiter a me contacter.

Hubert
Afficher la suite 

2 réponses

Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
18
Commenter la réponse de jmfmarques
Messages postés
7401
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
45
0
Merci
Salut,
C'est vendredi , jour de fête, et surtout avant un WE de 4 jour.
Alors Cadeau.

MsgBox ListFolder("C:\Temp", "xmlout")

Function ListFolder(Spath, Ext)

Dim Fs, Fo, Fi, Ret, NomApp
   Set Fs = CreateObject("Scripting.FileSystemObject")
   'si le répertoire existe
   If Fs.FolderExists(Spath) Then
       'on le récupère
       Set Fo = Fs.GetFolder(Spath)
       'pour chaque fichier
       For Each Fi In Fo.Files
           'si son extension est celle passée en paramètre
           If UCase(Fs.GetExtensionName(Fi.Path)) = UCase(Ext) Then
               NomApp = Mid(Fi.Name, InStr(1, Fi.Name, "_") + 1) ', Len(Fi.Name) - InStrRev(Fi.Name, "_"))
               NomApp = Mid(NomApp, 1, InStrRev(NomApp, "_") - 1)
               Ret = NomApp & vbCrLf & Ret
           End If
       Next
   End If
   ListFolder = Ret
End Function<hr />, ----
[../code.aspx?ID=41455 By Renfield]

@+: Ju£i€n
Pensez: Réponse acceptée
Commenter la réponse de jrivet