Das FileSystemObject (FSO) für Dateizugriff

  • Das Lesen und Schreiben von Dateien ist seit dem IIS 4 durch ASP bzw VBScript relativ einfach.
    In diesem Workshop zeige ich euch, wie das im Einzelnen funktioniert.

    Ich zeige das am Beispiel einer Serverstatistik.
    Hier erstmal der Quellcode für die global.asa


    Ich gehe den Quelltext jetzt mal Zeile für Zeile durch

    GLOBAL.ASA
    1. Anfang der Datei
    3. Start der Sub Session_onStart
    4. Falls ein Fehler auftritt, weitermachen
    6. - 10. Deklaration der Variablen
    12. Instanziiren des FSO
    14. - 16. Dateiname aus dem aktuellen Datum zusammenbasteln
    17. Datei zum Schreiben öffnen, wenn sie nicht existiert wird die erstellt. Neue Daten werden am Ende angehängt
    19. - 23. Wertzuweisung an die Variablen
    25. - 29. Hier werden die Daten in die Datei geschrieben
    31. - 33. Objekte schliessen und zurücksetzen
    35. Ende der Sub
    38. Ende der Datei

    Datei zum auslesen
    5. - 7. Dateiname zusammenbasteln wie in der GLOBAL.ASA
    8. Instanziiren des FSO, öffnen der Datei zum Lesen
    10. - 13. Eine Schleife geht jede Zeile der Datei durch und gibt den Inhalt der Zeile aus. Ein Counter wird um 1 erhöht.
    14. Sobald das Ende der Datei erreicht ist, schliesse die Datei
    15. Die Anzahl der Zeilen in der Datei wird durch 5 geteilt umd die Anzahl der Datensätze rauszukriegen. 5, weil 5 Zeilen zu einem Datensatz gehören
    16. Eine Linie zeichnen
    17. Ausgabe, wieviele Datensätz in dieser Datei gespeichert sind

    Fertig :)


    Diesen Quelltext könnt Ihr 1:1 übernehmen, es muss nur in Zeile 16 der GLOBAL.ASA statt "logfiles/" der entsprechende Pfad angegeben werden. Dieser Ordner muss allerdings schreibrechte haben!

    Der Pfad muss auch in Zeile 7 der Auslesedatei angepasst werden.

    Was ich mir dabei gedacht habe:
    es soll für jeden Tag ein eigenes Logfile angelegt werden, es sollte schneller sein als eine Datenbank, und es sollte einfach zu programmieren sein.
    In Zeile 15 der GLOBAL.ASA benutze ich "Replace" um aus dem Datum die Punkte zu entfernen. Ich ersetze den Punkt gegen NIX.

    Wenn ich die Datei öffnen will wird sie automatisch neu erstellt, wenn sie noch nicht da ist.

    Is doch ganz einfach, oder?


    Man kann das schreiben von Dateien zum Beispiel auch dazu nutzen um Formulare zu speichern (ein Gästebuch zum Beipsiel, oder einen Shop)

    Wie immer, Fragen hier rein, ich beantworte so schnell wie möglich!

    Greetings, Cort