Créer un repertoire tous les 1000 Fichiers.

cs_globule Messages postés 327 Date d'inscription mardi 8 octobre 2002 Statut Membre Dernière intervention 6 octobre 2010 - 26 sept. 2007 à 14:56
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 - 26 sept. 2007 à 17:11
Bonjour,

Je suis a la recherche d'un algorithme qui crée un repertoire tous les 1000 Fichiers.

Merci

5 réponses

nah666 Messages postés 75 Date d'inscription samedi 30 août 2003 Statut Membre Dernière intervention 7 janvier 2008 1
26 sept. 2007 à 15:20
Mettre CompteurFichiers a 0
Tant qu'il reste des fichiers
  créer fichier
  incrementer CompteurFichiers
  si CompteurFichiers >=1000
    Créer repertoire
    Mettre CompteurFichiers a 0
  Finsi
FinTant

C'etait, ... trés eprouvant mentalement ... , je comprend que tu aie eu besoin d'aide
0
cs_Chatbour Messages postés 764 Date d'inscription jeudi 27 juillet 2006 Statut Membre Dernière intervention 6 septembre 2010 19
26 sept. 2007 à 15:21
Salut, pouvez-vous expliquer d'avantage..
Est-ce cet algorithme doit lire à dans un répertoire ?









______________________________________________________________________
Visitez ma ville http://chatbour.miniville.fr/
Boissons gratuit
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
26 sept. 2007 à 15:39
Salut,

Regarde ce code de PCPT(Snippet déposé), il te permet de compter un certains type de fichier voir tous les fichiers :

Function CountFilesFromDirectory(ByVal sDir As String, Optional ByVal sFilter As String = "*.*") As Long
    CountFilesFromDirectory = 0
    If RightB$(sDir, 2) <> "" Then sDir = sDir & ""
'   formate le  chemin
    Dim sFile As String
    sFile = Dir(sDir & sFilter, vbHidden Or vbSystem)


    If LenB(sFile) > 0 Then
'       boucle sur tous les  fichiers (et incrémente)
        Do
            CountFilesFromDirectory = CountFilesFromDirectory + 1
            sFile = Dir
        Loop Until LenB(sFile) = 0
    End If
End Function


'   EXEMPLE  D'UTILISATION
Private Sub Form_Load()
'   compte toutes les  dll dans windows
MsgBox CountFilesFromDirectory("C:\Windows", "*.dll")
'   compte tous les fichiers dans temp
MsgBox CountFilesFromDirectory(Environ$("TEMP"))
End Sub

Maitenant que tu peux compter tous les fichiers, utilise Mkdir pour créer ton répertoire quant tu atteints 1000 fichiers(ce que te renvois CountFilesFromDirectory)


A+
Exploreur

 Linux a un noyau, Windows un pépin


 
0
cs_globule Messages postés 327 Date d'inscription mardi 8 octobre 2002 Statut Membre Dernière intervention 6 octobre 2010
26 sept. 2007 à 15:40
En fait je connais déjà le nombre de fichier, puisque ce dernier correspond a une clé auto incrémentielle dans une base de données.
J'ai finalement fait l'algo suivant qui fonctionne

NumImg correspond au numéro de mon fichier, j'ai crée un repertoire tous les 10 fichiers pour le test, il suffit donc de remplacer step -10 par step -1000

    NumRep = 0
    For NumRep = 150000 To 1 Step -10
        If NumImg > NumRep Then
            If Dir(MyChReseau + "\imageexterne\REP_" & NumRep, vbDirectory) = "" Then MkDir (MyChReseau + "\imageexterne\REP_" & NumRep)
            Exit For
        End If
    Next
    If NumRep < 1 Then
        NumRep = 1
        If Dir(MyChReseau + "\imageexterne\REP_" & NumRep, vbDirectory) = "" Then MkDir (MyChReseau + "\imageexterne\REP_" & NumRep)
    End If
0

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

Posez votre question
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
26 sept. 2007 à 17:11
Salut,

Content de voir que tu as trouver ta solutions, mais précise la prochaine fois un peu plus tes demandes de ce que tu connais >> En fait je connais déjà le nombre de fichier, puisque ce dernier correspond a une clé auto incrémentielle dans une base de données

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
Rejoignez-nous