webForumDet fria alternativet

Dynamisk listning av filer

ASP

0 svar · 1 009 visningar · startad av Vide

Medlem sedan dec. 19998 577 inlägg
Frågan#1

Detta skript listar alla filer i den specifierade mappen och länkar till dessa, med det som står mellan <title>-taggarna, som länknamn... Jag använder mig av Regular expression och FileSystemObject...

<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#006666"><%
'***** Specifierar sökvägen till filerna, lokalt och via HTTP *****
http = "http://www.webeye.nu/asp/artiklar"
lokal = Server.Mappath("..\asp\artiklar\")

'***** Skapar FSO-objektet och hämtar in alla filer från sökvägen *****'
Set fso = CreateObject("scripting.FileSystemObject")
Set fsof = fso.GetFolder(lokal)
Set fsofi = fsof.files

'***** Skapar ett Regular Expression *****'
Set regEx = New RegExp
regEx.IgnoreCase = True
regEx.Global = True

'***** Loopar igenom alla filer i katalogen *****'
For Each fil in fsofi

'\*\*\*\*\* Öppnar filen och lägger allt innehåll i variabelnn filecont \*\*\*\*\*'
Set filen = fso.OpenTextFile(lokal & "\\" & fil.name)
filecont = filen.ReadAll

'\*\*\*\*\* Letar upp positionen för textsträngen \<title\> \*\*\*\*\*'
regEx.Pattern = "\<title\>"
Set Matches = regEx.Execute(filecont)
For each match1 in Matches
	pos1 = Match1.FirstIndex+8
	exit For
Next

'\*\*\*\*\* Letar upp positionen för textsträngen \</title\> \*\*\*\*\*'
regEx.Pattern = "\</title\>"
Set Matches2 = regEx.Execute(filecont)
For each match2 in Matches2
	pos2 = Match2.FirstIndex
	exit For
Next

'\*\*\*\*\* Bryter ut all text mellan \<title\> och \</title\> \*\*\*\*\*'
title_text = pos2 - pos1
title = Mid(filecont,pos1,title_text+1)

'\*\*\*\*\* Skriver ut en länk till filen med titeln som länknamn \*\*\*\*\*'
Response.write "\<a href='" & http & "/" & fil.name & "'\>" & title & "\</a\>\<br\>"

Next
%>

------------------
www.webeye.nu

[Redigerat av Vide den 20 mar 2001]

254 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)