/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Skrivning af filer - FSO
Fra : Ukendt


Dato : 28-03-06 17:01

Hej

har følgende lille kodestump til at skrive til en tekst fil

Sub Skrivtilfil(TextFile)

'Deklarer variable
Dim objFile, objFSO, strPathToFile

'Åbn forbindelse til din tekstfil
Set objFSO = CreateObject("Scripting.FileSystemObject")
strPathToFile = Server.Mappath(TextFile)
Set objFile = objFSO.OpenTextFile(strPathToFile, 8)

objfile.WriteLine "Tekst som skal skrives i fil"

'Ryd op
objFile.Close
Set objFile = Nothing
Set objFSO = Nothing

End Sub

Det fungerer skam ganske udemærket, men ville gerne kunne indsætte en linje
et vilkårligt sted i filen

Et eksempel. Jeg har en tekstfil med 10 linjer, og vil tilføje en ny linje
efter den 4. linje. Efter tilføjelsen skal tekstfilen altså indeholde 11
linjer.

Nogen som har et bud på hvordan det gøres?


--
Med venlig hilsen - Carsten Sørensen

Gode råd til webdesigneren - http://csnet.dk/html/
Nørholm Forsamlingshus - http://forshus.dk



 
 
finn elmgaard (28-03-2006)
Kommentar
Fra : finn elmgaard


Dato : 28-03-06 17:49

"CS" <askmeforanaddress> wrote in message
news:44295dc0$0$84024$edfadb0f@dtext01.news.tele.dk...
>
> Et eksempel. Jeg har en tekstfil med 10 linjer, og vil tilføje en ny linje
> efter den 4. linje. Efter tilføjelsen skal tekstfilen altså indeholde 11
> linjer.
>
Det kan f.eks. gøres efter følgende princip:

Læs textfilen
Læg hver linie i et array
Skriv ny textfil linie for linie fra array vha en løkke
Brug en tæller i løkken til at bestemme, hvornår du skal skrive dín nye
linie.

Altså noget i retning af:

FilTxt=objFile.ReadAll
LineArray = Split(FilTxt, vbCrLf) 'Læg hver linie i et array

Counter=0
For I = 0 To UBound(LineArray)
[Udskriv linie til fil]
[if Counter=3 then udskriv din nye linie]
Counter=Counter+1
Next

Det kan muligvis gøres smartere, men så får du nok nogle forslag til det.
mvh
Finn



Ukendt (29-03-2006)
Kommentar
Fra : Ukendt


Dato : 29-03-06 19:10


"finn elmgaard" <agertoften@XXXstofanet.dk> skrev i en meddelelse
news:442968e3$0$11171$ba624c82@nntp02.dk.telia.net...
> "CS" <askmeforanaddress> wrote in message
> news:44295dc0$0$84024$edfadb0f@dtext01.news.tele.dk...
>>
>> Et eksempel. Jeg har en tekstfil med 10 linjer, og vil tilføje en ny
>> linje
>> efter den 4. linje. Efter tilføjelsen skal tekstfilen altså indeholde 11

> FilTxt=objFile.ReadAll
> LineArray = Split(FilTxt, vbCrLf) 'Læg hver linie i et array
>
> Counter=0
> For I = 0 To UBound(LineArray)
> [Udskriv linie til fil]
> [if Counter=3 then udskriv din nye linie]
> Counter=Counter+1
> Next

Super. Ser ud til at virke. Skal dog lige trækkes en fra Ubound(lineArray),
da der ellers vil blive tilføjet en tom linje hver gang der tilføjes en
linje


--
Med venlig hilsen - Carsten Sørensen

Gode råd til webdesigneren - http://csnet.dk/html/
Nørholm Forsamlingshus - http://forshus.dk



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste