/ 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
Linieskifft ved skrivning til .txt
Fra : Claus Nymand Pederse~


Dato : 29-12-03 18:39

Når jeg benytter følgende til at skrive til et .txt dokument,
overskrives det der i forvejen står i dokumentet. Er det muligt
at lave et linieskift, således at det der tilføjes, kommer til at
stå under/over det der allerede står i dokumentet?

test.asp:
<%
Dim fso, f, filespec
Set fso = CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("../db/test.txt")
Set f = fso.OpenTextFile(filespec,1)

Do While not f.AtEndOfStream
Response.write f.ReadLine & "<br>"
Loop

f.Close
%><br><br>

<form method="post" action="test1.asp">
<input type="text" value="" name="navn">
<input type="submit" value="Tilføj">
</form>


test1.asp:
<%
Dim fso, f, filespec
Set fso = CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("../db/test.txt")
Set f = fso.OpenTextFile(filespec,2)

f.Write Request.Form("navn")

Set f = fso.OpenTextFile(filespec,1)
Do While not f.AtEndOfStream
Response.write f.ReadLine & "<br>"
Loop
f.Close
%>



--
Claus Pedersen

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Martin Hintzmann And~ (29-12-2003)
Kommentar
Fra : Martin Hintzmann And~


Dato : 29-12-03 18:53

Claus Nymand Pedersen wrote:

> Når jeg benytter følgende til at skrive til et .txt dokument,
> overskrives det der i forvejen står i dokumentet. Er det muligt
> at lave et linieskift, således at det der tilføjes, kommer til at
> stå under/over det der allerede står i dokumentet?

Ja, hvis du kigger i "specifikationerne" for OpenTextFile,
http://www.w3schools.com/asp/met_opentextfile.asp

så finder du følgende:
FileSystemObject.OpenTextFile(fname,mode,create,format)

Parametret "mode" kan være 1=ForReading, 2=ForWriting eller 8=ForAppending

Du har i "test1.asp" valgt mode 2 (ForWriting), hvilket skulle have
været 8 (ForAppending). Så bliver det nye data tilføjet i bunden af
tekst-filen.

PS. Hvis det er for øvelsen er det fint nok, men ellers er det en meget
dårligt ide at have en "db" i en tekst-fil ("../db/test.txt"). Benyt i
stedet en database eller XML.

Hintzmann c",)

Claus Nymand Pederse~ (29-12-2003)
Kommentar
Fra : Claus Nymand Pederse~


Dato : 29-12-03 19:41

Tak for det hurtige svar!

Martin Hintzmann Andersen wrote:

> Du har i "test1.asp" valgt mode 2 (ForWriting), hvilket skulle have
> været 8 (ForAppending). Så bliver det nye data tilføjet i bunden af
> tekst-filen.

Når jeg ændrer mode til 8, tilføjes den nye tekst uden at andet slettes, men
den tilføjes på samme linie som det foregående. Jeg kan ikke umiddelbart se,
hvordan jeg skulle kunne få den til at tilføje det i næste linie. Nogle
idéer?

> PS. Hvis det er for øvelsen er det fint nok, men ellers er det en meget
> dårligt ide at have en "db" i en tekst-fil ("../db/test.txt"). Benyt i
> stedet en database eller XML.

Bare rolig - det er bare for sjov skyld


--
Claus Pedersen

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jørn Andersen (30-12-2003)
Kommentar
Fra : Jørn Andersen


Dato : 30-12-03 00:06

On Mon, 29 Dec 2003 18:41:01 +0000 (UTC), Claus Nymand Pedersen
<claus_nymand@hotmail.com> wrote:

>Når jeg ændrer mode til 8, tilføjes den nye tekst uden at andet slettes, men
>den tilføjes på samme linie som det foregående. Jeg kan ikke umiddelbart se,
>hvordan jeg skulle kunne få den til at tilføje det i næste linie. Nogle
>idéer?

Handler det ikke bare om at indsætte et linieskift (vbcrlf) som det
allerførste der tilføjes? (Har ikke selv prøvet ...)

Good luck!

--
Jørn Andersen,
Brønshøj

Søg
Reklame
Statistik
Spørgsmål : 177550
Tips : 31968
Nyheder : 719565
Indlæg : 6408822
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste