Abre un archivo especificado y devuelve un objeto TextStream que se puede utilizar para leer, escribir o agregar en el archivo.
Sintaxis
object.OpenTextFile(filename[, iomode[, create]])
Argumentos:
FileSystemObject.Format: opcional. Indica el formato del archivo abierto.
Nota:
El argumento format está inactivo y se mantiene para imitar la sintaxis VBScript. No tiene ningún efecto. Los archivos creados solo están en formato Unicode.
Configuración
El argumento iomode puede tener cualquiera de los siguientes valores:
Tabla 11-34 Valores del argumento iomode
| Constante | Valor | Descripción |
|---|---|---|
| ForReading | 1 | Abre un archivo solo para lectura. No puede escribir en este archivo. |
| ForWriting | 2 | Abre un archivo para escritura. |
| ForWriting | 8 | Abre un archivo y escribe al final del archivo. |
Observaciones
El siguiente código muestra el uso del método OpenTextFile.
Nota:
Si se crea un archivo nuevo, se creará con formato Unicode.
Si el archivo no existe, el código devolverá un error en ReadMode.
Ejemplo 1:
Sub OpenFileForReading()
Const ForReading = 1
Dim fso, tso
Set fso = CreateObject("Scripting.FileSystemObject")
Set tso = fso.OpenTextFile("C:\example1.txt", ForReading)
tso.Close ' Close the file.
Set tso = Nothing
Set fso = Nothing
End Sub
Call OpenFileForReading
'If C:\example1.txt is not present then code will throw an error.
Ejemplo 2:
Sub OpenFileForWriting()
Const ForWriting = 2
Dim fso, file
Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.OpenTextFile("C:\example2.txt", ForWriting, True)
file.WriteLine("This is written to the file.") ' Writes text to the file.
file.Close ' Close the file.
Set file = Nothing
Set fso = Nothing
End Sub
Call OpenFileForWriting
'Creates C:\example2.txt and writes a line "This is written to the file."
Ejemplo 3:
Sub OpenFileForAppending()
Const ForAppending = 8
Dim fso, file
Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.OpenTextFile("C:\example2.txt", ForAppending, True)
file.WriteLine("This line is appended.") ' Appends text to the file.
file.Close ' Close the file.
Set file = Nothing
Set fso = Nothing
End Sub
Call OpenFileForAppending
'Creates C:\example2.txt and writes a line "This line is appended.". If file already exists it appends this line.
Ejemplo 4:
Sub OpenFileWithCreateOption()
Const ForWriting = 2
Dim fso, file
Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.OpenTextFile("C:\example2.txt", ForWriting, True) ' Creates the file if it doesn't exist.
file.WriteLine("New File created and text written.") ' Writes text to the file.
file.Close ' Close the file.
Set file = Nothing
Set fso = Nothing
End Sub
Call OpenFileWithCreateOption
'Overwrites C:\example2.txt and writes a line "New File created and text written.". If file does not exists then it creates it.