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:

FileSystemObject Object

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