OVH Cloud OVH Cloud

ordre de lecture de fichier

3 réponses
Avatar
sgroulx
bonjour,
je voudrai savoir si il est possible de specifiec dans quelle odre une page
asp ouvre un liste de fichier
car il l'ouvre en ordre alphabetique et je voudrai les ouvrir en ordre de
dernière modification

### mise en situation
Set myfso = CreateObject("Scripting.FileSystemObject")
Set dossier = myfso.GetFolder("c:\Log")
For Each file In dossier.files

Set fichier = myfso.OpenTextFile(file)

Do While Not fichier.atEndOfStream
Response.Write fichier.readline
Loop

Next

le dossier log contient ces fichier
2004-6-14.txt
2004-6-21.txt
2004-6-28.txt
2004-6-7.txt
2004-7-12.txt
2004-7-19.txt
2004-7-26.txt
2004-7-5.txt
2004-8-16.txt
2004-8-2.txt
2004-8-9.txt


merci
Sébas

3 réponses

Avatar
Francis Spiesser
sgroulx a couché sur son écran :
bonjour,
je voudrai savoir si il est possible de specifiec dans quelle odre une page
asp ouvre un liste de fichier
car il l'ouvre en ordre alphabetique et je voudrai les ouvrir en ordre de
dernière modification



Pour cela, il va falloir récupérer, pour chaque fichier sa date de
modif et construire un tableau en fonction de cette information, puis
ensuite traiter le tableau séquentiellement

--

------------------------------
Francis
(remplacer .nospam par .net dans mon adresse pour me répondre
directement)

"Quand tout baigne, il y a forcément quelque chose qui va couler"

Avatar
sgroulx
ok merci

"Francis Spiesser" a écrit dans le
message de news:
sgroulx a couché sur son écran :
bonjour,
je voudrai savoir si il est possible de specifiec dans quelle odre une
page


asp ouvre un liste de fichier
car il l'ouvre en ordre alphabetique et je voudrai les ouvrir en ordre
de


dernière modification



Pour cela, il va falloir récupérer, pour chaque fichier sa date de
modif et construire un tableau en fonction de cette information, puis
ensuite traiter le tableau séquentiellement

--

------------------------------
Francis
(remplacer .nospam par .net dans mon adresse pour me répondre
directement)

"Quand tout baigne, il y a forcément quelque chose qui va couler"




Avatar
Georges MAUREL
Bonjour,
voici un bout de code qui devrait t'aider

--------------------------------------------------------------
Set myfso = CreateObject("Scripting.FileSystemObject")
Set dossier = myfso.GetFolder("c:temp")

Set dico1 = CreateObject("Scripting.Dictionary")
Set dico2 = CreateObject("Scripting.Dictionary")
Set dico3 = CreateObject("Scripting.Dictionary")

v_nb = dossier.files.count
v_i = 0

For Each file In dossier.files
Set fichier = myfso.Getfile(file)
dico1.add v_i, fichier.Name
' on ajoute v_i pour différencier 2 fichier ayant la même date de
modification
dico2.add v_i, fichier.DateLastModified+v_i
dico3.add fichier.DateLastModified+v_i, v_i

v_i = v_i+1
next

' Récupération des dates de modification
dim table
table = dico2.Items()

' Tri du tableau
TableauTrie = Trier(table)

for v_i = 0 to v_nb-1
v_item = TableauTrie(v_i)
v_dico3 = dico3.item(v_item)
' ici on a le nom du fichier à ouvrir
v_fichier = dico1.item(v_dico3)
' mettre la lecture ici....
next

'-----------------------------------
Function Trier(pTableau)
Dim Lig_Temp
Dim Tab_Temp
' récupération du nombre de ligne tableau
MaxLig = UBound(pTableau,1)
MaxCol = 1
i = 0
ReDim Tab_Temp(MaxLig)
Do until i = MaxLig
' Chaque élément est comparé à celui qui lui est supérieur dans le
classement
j=0
Do until j = MaxLig -1
If (pTableau(j) > pTableau((j + 1))) Then
' l'élément J est plus important que l'élément J + 1 alors on les
intervertit
Lig_Temp = pTableau(j)
Tab_Temp(j) = pTableau((j + 1))
Tab_Temp((j + 1)) = Lig_Temp
If j < MaxLig - 2 Then
j=j+1
End If
Else
Tab_Temp(j) = pTableau(j)
Tab_Temp((j + 1)) = pTableau((j+1))
End If
j=j+1
Loop
i=i+1
pTableau = Tab_Temp
Loop
Trier = Tab_Temp
End Function
---------------------------------------------

Cordialement
Georges


"sgroulx" <sgroulx(bidon)@9bit.qc.ca> a écrit dans le message de
news:Oca1V$
ok merci

"Francis Spiesser" a écrit dans le
message de news:
sgroulx a couché sur son écran :
bonjour,
je voudrai savoir si il est possible de specifiec dans quelle odre une
page


asp ouvre un liste de fichier
car il l'ouvre en ordre alphabetique et je voudrai les ouvrir en ordre
de


dernière modification



Pour cela, il va falloir récupérer, pour chaque fichier sa date de
modif et construire un tableau en fonction de cette information, puis
ensuite traiter le tableau séquentiellement

--

------------------------------
Francis
(remplacer .nospam par .net dans mon adresse pour me répondre
directement)

"Quand tout baigne, il y a forcément quelque chose qui va couler"