Script asp: Leggere e scrivere file con asp

   difficoltà:  script script script script script

Script simili
10/10/2006


Con questo script vediamo come leggere il contenuto di un file e come scrivere un file di testo con asp. Useremo l'oggetto FileSystemObject, apriremo il file che ci interessa con OpenTextFile, passandogli come parametro l'oggetto filesystem creato e la modalità di apertura del file: solo lettura(1), scrittura(2), append(8). Se aperto in scrittura cancellerà il contenuto del file e lo riscriverà da zero, se aperto come append aggiungerà il testo alla fine del documento aperto. Il file puo' essere letto riga per riga con ReadLine o tutto con ReadAll.
Controlliamo sempre che il file su cui lavoriamo esista.

Con questo script leggiamo il contenuto del file tutto in una volta:

<%
filePath = Server.Mappath("file_testo.txt")
Set objFileSystem = Server.CreateObject("Scripting.FileSystemObject")
if objFileSystem.FileExists(filePath ) then
'apro file in lettura
Set objFile = objFileSystem.OpenTextFile(filePath, 1)
'scrivo a video contenuto file
Response.Write objFile.ReadAll
'oppure lo inserisco in una variabile contenuto_testo=objFile.ReadAll
objFile.Close
Set objFile=Nothing
end if
Set objFileSystem=Nothing
%>
Con questo script leggiamo il file riga per riga
<%
filePath = Server.Mappath("file_testo.txt")
Set objFileSystem = Server.CreateObject("Scripting.FileSystemObject")
if objFileSystem.FileExists(filePath ) then
Set objFile = objFileSystem.OpenTextFile(filePath, 1)
'leggo file riga per riga fino alla fine del file
Do While Not objFile.AtEndofStream
Response.Write objFile.ReadLine & "<br>"
Loop
objFile.Close
Set objFile=Nothing
end if
Set objFileSystem=Nothing
%>
Scrivo il testo nel file (controllare la cartella abbia i permessi di scrittura) e se il file non esiste lo creo.
<%
filePath = Server.Mappath("file_testo.txt")
Set objFileSystem = Server.CreateObject("Scripting.FileSystemObject")
if not objFileSystem.FileExists(filePath) then
'se non esiste lo creo
objFileSystem.CreateTextFile(filePath)
end if
Set objFile = objFileSystem.OpenTextFile(filePath, 2)
'scrivo una riga sul file
' objFileSystem.OpenTextFile(filePath, 2) -> sovrascrivo file
' objFileSystem.OpenTextFile(filePath, 8) -> aggiungo il testo al fondo del file
objFile.WriteLine("nuovo testo file")
objFile.Close
Set objFile=Nothing
Set objFileSystem=Nothing
%>


Social:


Donazione:
Se questo script ti è stato utile e ti ho fatto risparmiare tempo e denaro fai una
qualsiasi cifra è ben accetta! 1€, 3€, 5€ ,10€, 50€ ;-) fai te!

Permalink: Tag:
script   asp   file   filesystem  
Script Simili: Permalink: Link utili:
Tools:
Feed RSS    



Commenti


  joseph layousse

24/3/2007 11:52:56

un messagio mi dice che manca obifilesystem

  Fabio

24/3/2007 11:58:57

cosa ti dice esattamente il messaggio?
sei sicuro di non aver solo scritto male il nome della variabile?
obifilesystem invece di objfilesystem?

  Raffa

2/4/2007 12:02:48

Server object error 'ASP 0177 : 800401f3'

Server.CreateObject Failed

/raffaeleconti2/pagine/apri_file3.asp, line 2

800401f3

  Fabio

2/4/2007 12:13:24

a me funziona correttamente.
Che hosting usi? Non è magari un hosting di quelli gratuiti, magari con Scripting.FileSystemObject disabilitato 'per ragioni di sicurezza'?

  Mimmo

13/8/2014 12:55:28

Salve, ho provato lo Script asp: Leggere e scrivere file con asp,
un messaggio mi dice: Microsoft VBScript compilation error '800a0401'

Expected end of statement

/nuova_pagina_3.asp, line 1

filePath = Server.Mappath("file_testo.txt")Set objFileSystem = Server.CreateObject("Scripting.FileSystemObject")if objFileSystem.FileExists(filePath ) then
puoi aiutarmi, magari mi invii la pagina asp corretta
Grazie


  Mimmo

13/8/2014 13:05:55

Scusa forse ho sbagliato a scrivere l'indirizzo e-mail
questo è corretto: dcecala@libero.it
Salve, ho provato lo Script asp: Leggere e scrivere file con asp,
un messaggio mi dice: Microsoft VBScript compilation error '800a0401'
Expected end of statement
/nuova_pagina_3.asp, line 1
filePath = Server.Mappath("file_testo.txt")Set objFileSystem = Server.CreateObject("Scripting.FileSystemObject")if objFileSystem.FileExists(filePath ) then
puoi aiutarmi, magari mi invii la pagina asp corretta
Grazie




Lascia un commento


Codice di controllo*:
Nome*:
Email/Link:
Testo*:
 
I campi contrassegnati con * sono obbligatori.