Avatar billede mkiii Nybegynder
02. november 2005 - 13:42 Der er 6 kommentarer og
1 løsning

omdøb txt fil og opret ny (logfil)

Hej jeg har et probl med min logfil.
prob er at den blir mega lang det er sådan set godt nok.

mit prob er at jeg vil lave en funktion der hedder opret en ny logfil og omdøb den gamle til fx old_log_210805.txt
så man stadig har den gamle.

Samtidig med skal der så selvfølgelig oprettes en ny tom txt fil som hedder current_log.txt

hvis det hjælper noget skriver jeg sådan her til min logfil
    function logfil(txt)
        Dim fso, f, filespec
        Set fso = CreateObject("Scripting.FileSystemObject")
        filespec = Server.Mappath("log/current_log.txt")
        Set f = fso.OpenTextFile(filespec,8)
        f.WriteLine txt
        f.Close
    end function
Avatar billede softspot Forsker
02. november 2005 - 13:48 #1
Du kan bruge fso.MoveFile(source, destination) til at omdøbe filen og derefter kalde fso.OpenTextFile(filespec,8,true) for at oprette en ny logfil (hvis den gamle ikke eksisterer - og det gør den jo ikke hvis du lige har omdøbt den).
Avatar billede softspot Forsker
02. november 2005 - 13:49 #2
Avatar billede mkiii Nybegynder
02. november 2005 - 14:09 #3
okay takker fik det til at virke sådan her er det en korrekt måde eller er der en nemmere måde

        dim flytfil,fil
        set flytfil=Server.CreateObject("Scripting.FileSystemObject")
        Set fil=flytfil.GetFile(Server.Mappath("log/current_log.txt"))
        fil.Move(Server.Mappath("log/old_log.txt"))
        set fil=nothing
        set flytfil=nothing

        dim opretfil,filnavn
        set opretfil=Server.CreateObject("Scripting.FileSystemObject")
        set filnavn=opretfil.CreateTextFile(Server.Mappath("log/current_log.txt"))
        filnavn.WriteLine("Ny log startet d. "&now&"")
        filnavn.Close
        set filnavn=nothing
        set opretfil=nothing
Avatar billede softspot Forsker
02. november 2005 - 16:07 #4
Korrekt er vel svært at afvise hvis det fungerer :)

Jeg ville måske bare have lavet en lille funktion der omdøber filen og så modificeret den eksisterende funktion til at oprette logfilen hvis den ikke eksisterer.

    function renamelogfil()
        Dim fso, srcfilespec, dstfilespec
        Set fso = CreateObject("Scripting.FileSystemObject")
        srcfilespec = Server.Mappath("log/current_log.txt")
        dstfilespec = Server.Mappath("log/old_log_" & right("00" & day(now),2) & right("00" & month(now),2) & year(now) & ".txt")
        fso.MoveFile(srcfilespec,dstfilespec)
    end function

    function logfil(txt)
        Dim fso, f, filespec
        Set fso = CreateObject("Scripting.FileSystemObject")
        filespec = Server.Mappath("log/current_log.txt")
        Set f = fso.OpenTextFile(filespec,8,true)
        f.WriteLine txt
        f.Close
    end function
Avatar billede mkiii Nybegynder
25. december 2005 - 18:25 #5
der takkes opretter, og beklager lange svar tid. opretter du et svar så du kan få nogle point...
Avatar billede softspot Forsker
25. december 2005 - 18:57 #6
Det er helt ok - det vigtigste er jo at du kommer videre :)
Avatar billede softspot Forsker
25. december 2005 - 19:29 #7
Tak for point :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester