webForumDet fria alternativet

Bakåfram

6 svar · 218 visningar · startad av qwerty

qwertyMedlem sedan jan. 2001391 inlägg
#1

Gör ett sista försök innan jag går hem att få en lösning på dagens stora problem. Jag sparar ner lite prylar i en textfil. Men jag vill att de nya värdena ska hamna överst i filen.

Så här ser filen ut nu:

Stort tack på förhand


                                   Set MittTxtObj = Server.CreateObject ("Scripting.FileSystemObject")
                                   Set MinFil = MittTxtObj.OpenTextFile(fil,8,true)

                                   MinFil.WriteLine "<br><br>"
                                   MinFil.WriteLine "<span class =brodtext>"
                                   MinFil.WriteLine date
                                   MinFil.WriteLine "</span>"
                                   MinFil.WriteLine "<br>"
                                   MinFil.WriteLine "<span class =fetbrod>"
                                   MinFil.WriteLine rubrik
                                   MinFil.WriteLine "</span>"
                                   MinFil.WriteLine "<span class =brodtext>"
                                   MinFil.WriteLine "<br>"
                                   MinFil.WriteLine nyhet
                                   MinFil.WriteLine "</span>"
                                   MinFil.close

------------------
Qwerty

Den som söker han letar...

EclipseMedlem sedan juli 20003 825 inlägg
#2

Frågar du inte samma fråga flera gånger!?

Detvar nån annan som sa, dunka in all info i en variablel, lägg data framför eller efter variabeln, beroende på vilket du föredrar, och skriv hela variabalen tillbaka till filen. (Du skriver alltså över befintlig data.)

Hajar du?

/ jakob

qwertyMedlem sedan jan. 2001391 inlägg
#3

Ja, jag trodde att jag hajade!

Varför vill inte detta funka?

fil =  "c:\ inetpub\wwwroot\news.txt"

Set MittTxtObj = Server.CreateObject ("Scripting.FileSystemObject")
Set MinFil = MittTxtObj.OpenTextFile(fil,2,true)

dim temp
temp = Minfil.readAll

MinFil.WriteLine temp
MinFil.WriteLine nytext
MinFil.close

PS.Jag såg att jag frågat samma fråga i olika trådar. Mitt misstag.

------------------
Qwerty

Den som söker han letar...

[Redigerat av qwerty den 16 jan 2001]

[Redigerat av qwerty den 16 jan 2001]

PatrikBMedlem sedan mars 20002 836 inlägg
#4

Hello,

det du gör är att du lägger till ny info sist i filen (längst ned).

Det kan göras med detta istället:

fil = "c:\ inetpub\wwwroot\news.txt"
Set MittTxtObj = Server.CreateObject ("Scripting.FileSystemObject")
Set MinFil = MittTxtObj.OpenTextFile(fil,8,true)

MinFil.Write nytext
MinFil.close

cya,

------------------
Private Function OutPut(ByRef sString)
OutPut = "Who gives ..." & sString
End Function

[Redigerat av PatrikB den 16 jan 2001]

[Redigerat av PatrikB den 16 jan 2001]

qwertyMedlem sedan jan. 2001391 inlägg
#5

OK jag ser att jag har vänt på två rader, men det är inte rikigt där problemet ligger. I koden länst upp i denna tråd
fungerar allt enligt mina önkemål, förutom att de nya nyheterna hamnar längst ner.
Koden som jag skrev i mitt förra inlägg funkar däremot inte. Jag får felmeddelande på raden MinFil.ReadAll. ServerCreateobject failed.

Hjälp mig...

------------------
Qwerty

Den som söker han letar...

qwertyMedlem sedan jan. 2001391 inlägg
#6

Kan man inte skriva så här.Får felmeddelande på den här raden hela tiden.

temp = Minfil.readAll

Server.CreateObject Failed.
The operation completed successfully

------------------
Qwerty

Den som söker han letar...

PatrikBMedlem sedan mars 20002 836 inlägg
#7

Hello,

du har öppnat filen för att skriva till den, då kan man inte läsa bara skriva.

Du får först läsa in filen, stänga och sedan öppna den för skrivning igen för att det ska lyckas.

Direkt ur VB Script documentationen:

Function ReadAllTextFile
   Const ForReading = 1, ForWriting = 2
   Dim fso, f
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.OpenTextFile("c:\testfile.txt", ForWriting, True)
   f.Write "Hello world!"
   Set f = fso.OpenTextFile("c:\testfile.txt", ForReading)
   ReadAllTextFile =   f.ReadAll
End Function

du kan ladda ned hela documentationen här

cya

------------------
Private Function OutPut(ByRef sString)
OutPut = "Who gives ..." & sString
End Function

129 ms totalt · 3 externa anrop · v20260731065814-full.beb2e261
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)