Поделиться через


Метод OpenAsTextStream

Открывает указанный файл и возвращает объект TextStream , который можно использовать для чтения, записи в файл или добавления к нему.

Синтаксис

object. OpenAsTextStream ([ iomode, [ format ]])

Синтаксис метода OpenAsTextStream состоит из следующих частей:

Part Описание
object Обязательно. Всегда имя объекта File .
iomode Необязательный параметр. Указывает режим ввода-вывода. Может соответствовать одной из трех констант: ForReading, ForWriting или ForAppending.
format Необязательный параметр. Одно из трех значений Tristate, используемых, чтобы указать формат открытого файла. Если отсутствует, открытый файл имеет формат ASCII.

Settings

Аргумент iomode может иметь любой из следующих параметров:

Константа Значение Описание
ForReading 1 Открытие файла только для чтения. Запись в этот файл невозможна.
ForWriting 2 Открытие файла для записи. Если существует файл с таким же именем, его содержимое перезаписывается.
ForAppending 8 Открытие файла и запись в конец файла.

Аргумент format может иметь одно из следующих значений.

Константа Значение Описание
TristateUseDefault –2 Открывает файл с помощью системного значения по умолчанию.
TristateTrue –1 Открывает файл в формате Юникод.
TristateFalse 0 Открывает файл в формате ASCII.

Замечания

Метод OpenAsTextStream предоставляет те же функциональные возможности, что и метод OpenTextFile объекта FileSystemObject. Кроме того, метод OpenAsTextStream можно использовать для записи в файл.

Следующий пример кода показывает применение метода OpenAsTextStream.

Sub TextStreamTest
    Const ForReading = 1, ForWriting = 2, ForAppending = 8
    Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0
    Dim fs, f, ts, s
    Set fs = CreateObject("Scripting.FileSystemObject")
    fs.CreateTextFile "test1.txt"            'Create a file
    Set f = fs.GetFile("test1.txt")
    Set ts = f.OpenAsTextStream(ForWriting, TristateUseDefault)
    ts.Write "Hello World"
    ts.Close
    Set ts = f.OpenAsTextStream(ForReading, TristateUseDefault)
    s = ts.ReadLine
    MsgBox s
    ts.Close
End Sub

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.