Lister tout les fichier d'un certaine extension et les mettres dans un listView
quentin0594
Messages postés12Date d'inscriptionvendredi 4 mai 2007StatutMembreDernière intervention23 février 2011
-
6 févr. 2011 à 12:07
cs_lim
Messages postés329Date d'inscriptionjeudi 20 novembre 2003StatutMembreDernière intervention10 mai 2014
-
6 févr. 2011 à 20:19
Bonjour, Je ne comprend pas pourquoi mon code ne fonctionne pas :
Public Sub AnalizeDirectory(ByVal Directory As String, ByVal Path As String)
Dim objFSO, objDossier
Dim NomFichierTxt
Dim Essai As String
On Error Resume Next
objDossier = objFSO.GetFolder(Directory)
If (objDossier.Files.Count > 0) Then
For Each objFichier In objDossier.Files
If (InStr(1, objFichier.Name, ".apk", 1) > 0) Then
Dim lv As ListViewItem = ListView1.Items.Add(objFichier.Name)
End If
Next
End If
Alors que quand je fais sa il focntionne (pour ajouter dans un fichier txt)
Const ctePourLecture = 1
Const ctePourEcrire = 2
Const ctePourAjouter = 8
Dim objFSO, objDossier, objFichier, objResultat
Dim NomFichierTxt
Dim Essai As String
On Error Resume Next
'C:\Document\Excel
NomFichierTxt = "Resultat.txt"
objFSO = CreateObject("Scripting.FileSystemObject")
objDossier = objFSO.GetFolder(Directory)
objResultat = objFSO.CreateTextFile((Directory & "" & NomFichierTxt), ctePourEcrire)
If (objDossier.Files.Count > 0) Then
For Each objFichier In objDossier.Files
If (InStr(1, objFichier.Name, ".apk", 1) > 0) Then
objResultat.WriteLine(objFichier.Name)
End If
Next
End If
objResultat.Close()
objResultat = Nothing
objDossier = Nothing
objFSO = Nothing
Pouvez-vous m'aider ??
Merci d'avance
A voir également:
Lister tout les fichier d'un certaine extension et les mettres dans un listView
quentin0594
Messages postés12Date d'inscriptionvendredi 4 mai 2007StatutMembreDernière intervention23 février 2011 6 févr. 2011 à 17:27
J'ai fait :
Dim objFSO, objDossier
Dim NomFichierTxt
Dim lv As New ListViewItem
On Error Resume Next
objDossier = objFSO.GetFolder(Directory)
If (objDossier.Files.Count > 0) Then
For Each objFichier In objDossier.Files
If (InStr(1, objFichier.Name, ".apk", 1) > 0) Then
lv = objFichier.Name
ListView1.Items.Add(lv)
End If
Next
End If
Mais sa ne fonctionne toujours pas... Je suis à cour d'idées..
quentin0594
Messages postés12Date d'inscriptionvendredi 4 mai 2007StatutMembreDernière intervention23 février 2011 6 févr. 2011 à 17:32
Et quand je fais :
Dim objFSO, objDossier
Dim NomFichierTxt
On Error Resume Next
objDossier = objFSO.GetFolder(Directory)
If (objDossier.Files.Count > 0) Then
For Each objFichier In objDossier.Files
If (InStr(1, objFichier.Name, ".apk", 1) > 0) Then
Dim lv As new ListViewItem(objFichier.Name)
ListView1.Items.Add(lv)
End If
Next
End If
Il sort une erreure :
Erreur 1
La résolution de surcharge a échoué, car aucun 'New' accessible ne peut être appelé sans conversion restrictive :
'Public Sub New(group As System.Windows.Forms.ListViewGroup)' : L'argument qui correspond au paramètre 'group' passe de 'Object' à 'System.Windows.Forms.ListViewGroup'.
'Public Sub New(items() As String)' : L'argument qui correspond au paramètre 'items' passe de 'Object' à 'Tableau à 1 dimension(s) de String'.
'Public Sub New(text As String)' : L'argument qui correspond au paramètre 'text' passe de 'Object' à 'String'. C:\Users\Quentin\documents\visual studio 2010\Projects\AndroRoms - Cook\AndroRoms - Cook\AndroRomHome.vb 80 13 AndroRoms - Cook
cs_lim
Messages postés329Date d'inscriptionjeudi 20 novembre 2003StatutMembreDernière intervention10 mai 20147 6 févr. 2011 à 20:19
Salut
rajoute un .tostring
Dim lv As new ListViewItem(objFichier.Name.tostring)
ListView1.Items.Add(lv)
Par contre je te conseille d'écrire en .net
Dim i As Integer
Dim j As Integer
'Récupère tous les répertoires de C:\
Dim Rep() As String = IO.Directory.GetDirectories("C:")
For i = 0 To Rep.Length - 1
'Pour chaque répertoire de C:\ on ne filtre que les fichiers .txt
Dim fichier() As String = IO.Directory.GetFiles(Rep(i), "*.txt")
'Pour chaque fichier trouvé on les ajoute dans la listview
For j = 0 To fichier.Length - 1
Dim lv As New ListViewItem(fichier(j))
ListView1.Items.Add(lv)
Next
Next