- Learn
- Guida VBScript
- Oggetto TextStream
Oggetto TextStream
VBScript ci mette a disposizione l’oggetto TextStream, grazie al quale è possibile creare, leggere e scrivere su un file di testo. Le applicazioni legate a questo oggetto sono innumerevoli; ad esempio, si può realizzare un contatore: ad ogni accesso alla pagina si legge il valore nel file di testo, e lo si riscrive incrementato di un’unità. Oppure si può creare un file per le statistiche, in cui memorizzare la data e l’ora di accesso ad una pagina.
Iniziamo con il realizzare un contatore:
<SCRIPT LANGUAGE=vbscript>
<!–
Set fso = CreateObject(“Scripting.FileSystemObject”)
contatore=”c:contatore.txt”
if not fso.FileExists (contatore)then
fso.CreateTextFile (contatore)
Set OggFile = fso.GetFile (contatore)
Set OggTextStream = OggFile.OpenAsTextStream(2)
OggTextStream.WriteLine “0”
OggTextStream.Close
end if
Set OggFile = fso.GetFile (contatore)
Set OggTextStream1 = OggFile.OpenAsTextStream(1)
valore=OggTextStream1.ReadLine
OggTextStream1.Close
Set OggTextStream = OggFile.OpenAsTextStream(2)
OggTextStream.WriteLine cstr(cint(valore)+1)
OggTextStream.Close
//–>
</SCRIPT>
Lo script è composto da una prima parte che si occupa di verificare
se esiste il file di testo; se non esiste, lo crea e gli inserisce dentro il
valore 0.
Il passo successivo è quello di leggere il valore contenuto nel file
di testo, che poi viene incrementato e scritto nel file di testo.
Si noti la differenza tra l’accesso al file in scrittura ed in lettura: in lettura
si ha OpenAsTextStream(1), mentre in scrittura OpenAsTextStream(2).
L’altro modo per aprire il file di testo è in accodamento, usando OpenAsTextStream(8).
La scrittura in accodamento è proprio quella che ci occorre per realizzare un file di log.
<SCRIPT LANGUAGE=vbscript>
<!–
Set fso = CreateObject(“Scripting.FileSystemObject”)
logfile=”c:logfile.txt”
if not fso.FileExists (logfile)then
fso.CreateTextFile (logfile)
end if
Set OggFile = fso.GetFile (logfile)
Set OggTextStream = OggFile.OpenAsTextStream(8)
OggTextStream.WriteLine now()
OggTextStream.Close
Set OggTextStream1 = OggFile.OpenAsTextStream(1)
Do While Not OggTextStream1.AtEndOfStream
stringa = OggTextStream1.ReadLine
document.write stringa & “<br>”
loop
OggTextStream1.Close
//–>
</SCRIPT>
Anche in questa applicazione viene controllata l’esistenza del file di log
e, se necessario, viene creato. Il file viene poi aperto in accodamento e gli viene scritta la data e l’ora
dell’accesso.
Per dimostrarne il funzionamento, il file viene poi aperto e con un ciclo Do
While-Loop vengono visualizzati tutti gli accessi.
Come l’oggetto FileSystem, anche l’oggetto TextStream è utilizzato per lo più lato server. Con i due esercizi appena proposti, abbiamo infatti creato un contatore di accessi come se ne vedono tanti nei siti internet, ed un file di statistiche.
Non solo i file di testo possono essere utilizzati come file di configurazione, oppure, se si è capaci, possono essere usati come database per piccole applicazioni. Alcuni forum sfruttano 2 file di testo per funzionare, uno per gli utenti ed uno per i messaggi. Potrebbe essere un ottimo esercizio per verificare le conoscenze di VBScript apprese finora.
Se vuoi aggiornamenti su Oggetto TextStream inserisci la tua email nel box qui sotto:
Compilando il presente form acconsento a ricevere le informazioni relative ai servizi di cui alla presente pagina ai sensi dell'informativa sulla privacy.
La tua iscrizione è andata a buon fine. Se vuoi ricevere informazioni personalizzate compila anche i seguenti campi opzionali:
Compilando il presente form acconsento a ricevere le informazioni relative ai servizi di cui alla presente pagina ai sensi dell'informativa sulla privacy.
I Video di HTML.it
Hyper-V: What’s New in Windows Server 2012 R2
La sessione di Silvio Di Benedetto e Mario Serra analizzerà le novità di hyper-v introdotte in WS2012/R2 e nella versione […]