Crear un fichero de texto con ASP
Los ficheros de texto pueden ser útiles para almacenar registros sencillos, trazas de ejecución, contadores o información temporal. En ASP clásico, podemos crearlos y escribir en ellos mediante FileSystemObject.
Es importante que la carpeta de destino tenga permisos de escritura y que los datos almacenados no sean sensibles ni procedan directamente del usuario sin una validación previa.
Crear el objeto FileSystemObject
Sección titulada «Crear el objeto FileSystemObject»Primero creamos una instancia de Scripting.FileSystemObject mediante Server.CreateObject().
Dim fsoSet fso = Server.CreateObject("Scripting.FileSystemObject")El objeto FileSystemObject permite trabajar con ficheros y carpetas desde ASP.
Crear el fichero de texto
Sección titulada «Crear el fichero de texto»El método CreateTextFile() crea el fichero y devuelve un objeto TextStream, que utilizaremos para escribir el contenido.
Dim salidaSet salida = fso.CreateTextFile("C:\temp\victor.txt", True, False)Los parámetros de CreateTextFile() son:
- La ruta y el nombre del fichero.
- Un valor
Booleanque indica si se sobrescribirá un fichero existente. - Un valor
Booleanque indica si el contenido se guardará comoUnicode. Si se utilizaFalse, se empleará el formato predeterminado del sistema.
En una aplicación web suele ser preferible obtener una ruta física controlada mediante Server.MapPath():
Dim rutaruta = Server.MapPath("/datos/victor.txt")Set salida = fso.CreateTextFile(ruta, True, False)Escribir contenido
Sección titulada «Escribir contenido»El método Write() añade texto sin introducir un salto de línea. En cambio, WriteLine() escribe el texto y añade un salto de línea al final.
salida.Write("Texto sin salto de línea")salida.WriteLine("Texto seguido de un salto de línea")Cerrar el fichero y liberar recursos
Sección titulada «Cerrar el fichero y liberar recursos»Cuando terminemos de escribir, debemos ejecutar Close() sobre el objeto TextStream. Después podemos liberar las referencias asignándoles Nothing.
salida.CloseSet salida = NothingSet fso = NothingCódigo completo
Sección titulada «Código completo»<%Dim fsoDim salidaDim ruta
ruta = Server.MapPath("/datos/victor.txt")
Set fso = Server.CreateObject("Scripting.FileSystemObject")Set salida = fso.CreateTextFile(ruta, True, False)
salida.WriteLine("Registro creado desde ASP")salida.WriteLine("Fecha: " & Now())
salida.CloseSet salida = NothingSet fso = Nothing%>Este ejemplo crea un fichero con CreateTextFile(), escribe dos líneas mediante WriteLine() y cierra correctamente el TextStream antes de liberar los objetos.
Descarga el código de Crear un fichero de texto con ASP
Descubre cómo crear un fichero de texto con ASP de forma segura y eficiente, usando FileSystemObject y WriteLine para registrar datos al instante.