On Tue, 18 Oct 2005 09:57:34 +0200, "David Trasbo" <datra@mail.dk>
wrote:
>På denne side:
http://indexpage.dk/artikler, bruger jeg et script som kan
>ses i denne tekstfil:
http://indexpage.dk/trial.txt. Det samme bliver
>gentaget mange gange, hvor det kun skulle gentages en gang, og resten af
>tekstfilen:
http://indexpage.dk/artikler/liste.txt bliver ikke taget med.
>
>Jeg er sikker på at der er problemer med løkken.
Nu er jeg ikke alt for stiv i FSO, men som den ser ud nu:
Do While not f.AtEndOfStream
Response.write txt
Loop
vil den bare skrive txt-variablen ud i al uendelighed (eller rettere
til serveren siger stop). Der er ikke noget der får den til at "gå
videre".
For at gøre det, skal du have .ReadLine-metoden med ind i din loop.
..ReadLine gør nemlig det, at den hopper til starten på næste linie, så
snart den har læst den aktuelle linie.
Så prøv i stedet:
Do While not f.AtEndOfStream
txt = f.Readline
txt = Replace(txt , "[kategori]", "<div class='kategori'>")
' osv.
Response.write txt
Loop
Måske vil det hjælpe at sætte et linieskift ind, hvis du har behov for
at læse din kode:
Response.write txt & vbcrlf
>Jeg poster dette indlæg, da jeg har stillet spørgsmålet før, men indlægget
>er forsvundet i glemmebogen, altså laaaaangt nede i arkivet...
I de fleste nyhedslæsere kan man sagtens finde et nyt indlæg i en
tråd, der ikke er mere end en uge gammel. Nu skulle jeg i stedet
*lede* efter det. Så medmindre vi snakker om tråde, hvor der ikke har
været indlæg i en måned eller mere, så vil jeg stærkt anbefale at
fortsætte indlæggene i samme tråd.
I øvrigt synes jeg, du skulle tage imod Jens GK's råd - medmindre du
forventer at få ret lange filer, nemlig at læse hele filen på en gang:
txt = f.ReadAll
txt = Replace(txt , "[kategori]", "<div class='kategori'>")
' osv.
Response.write txt
- og altså ingen Do While og Loop.
At køre så mange Replace's indeni en loop er virkelig noget der
trækker ressourcer.
Og så behøver du ikke selv indsætte linieskift: I modsætningen til
..ReadLine, så tager .ReadAll også linieskiftene med.
Good luck,
Jørn
--
Jørn Andersen,
Brønshøj