OpenTextFile Method
Opens a specified file and returns a TextStream object that can be used to read from, write to, or append to the file.
Syntax
object.OpenTextFile(filename[, iomode[, create[, format]]])
Arguments
object
Required. Object is always the name of a FileSystemObject.filename
Required. String expression that identifies the file to open.iomode
Optional. Can be one of three constants: ForReading, ForWriting, or ForAppending.create
Optional. Boolean value that indicates whether a new file can be created if the specified filename doesn't exist. The value is True if a new file is created, False if it isn't created. If omitted, a new file isn't created.format
Optional. One of three Tristate values used to indicate the format of the opened file (TristateTrue = -1 to open the file as Unicode, TristateFalse = 0 to open the file as ASCII, TristateUseDefault = -2 to open the file as the system default). If omitted, the file is opened as ASCII.
Settings
The iomode argument can have any of the following settings:
Constant |
Value |
Description |
---|---|---|
ForReading |
1 |
Open a file for reading only. You can't write to this file. |
ForWriting |
2 |
Open a file for writing. |
ForAppending |
8 |
Open a file and write to the end of the file. |
The format argument can have any of the following settings:
Constant |
Value |
Description |
---|---|---|
TristateUseDefault |
-2 |
Opens the file using the system default. |
TristateTrue |
-1 |
Opens the file as Unicode. |
TristateFalse |
0 |
Opens the file as ASCII. |
Remarks
The following code illustrates the use of the OpenTextFile method.
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0
Dim fso, MyFile, FileName, TextLine
Set fso = CreateObject("Scripting.FileSystemObject")
' Open the file for output.
FileName = "c:\testfile.txt"
Set MyFile = fso.OpenTextFile(FileName, ForWriting, True, TristateTrue)
' Write to the file.
MyFile.WriteLine "Hello world!"
MyFile.WriteLine "The quick brown fox"
MyFile.Close
' Open the file for input.
Set MyFile = fso.OpenTextFile(FileName, ForReading)
' Read from the file and display the results.
Do While MyFile.AtEndOfStream <> True
TextLine = MyFile.ReadLine
Document.Write TextLine & "<br />"
Loop
MyFile.Close
Applies To:
Change History
Date |
History |
Reason |
---|---|---|
September 2009 |
Added a comment to the examples. |
Information enhancement. |
April 2009 |
Modified examples. |
Information enhancement. |
See Also
TextStream Object
CreateTextFile Method
OpenAsTextStream Method
Working with Files