Оператор Write #

Записывает данные в последовательный файл.

Синтаксис

Запись #filenumber, [ outputlist ]

Синтаксис оператора записи Write # состоит из таких частей:

Part Описание
filenumber Обязательно указывать. Любой допустимый номер файла.
outputlist Необязательный параметр. Одно или несколько числовых выражений или строковых выражений через запятую, которые нужно записать в файл.

Замечания

Данные, записанные с помощью write # , обычно считываются из файла с параметром Input #.

Если опустить outputlist и добавить запятую после filenumber, в файл будет добавлена пустая строка. Несколько выражений могут быть разделены пробелом, точкой с запятой или запятой. Пробел выполняет такую же роль, как точка с запятой.

Когда для записи данных в файл используется Запись # , следует несколько универсальных предположений, чтобы данные всегда можно было прочитать и правильно интерпретировать с помощью input #, независимо от языкового стандарта:

  • Числовые данные всегда записываются с помощью точки в качестве десятичного разделителя.
  • Для данных типа Boolean печатается #TRUE# или #FALSE#. Ключевые словаTrue и False не переводятся независимо от языкового стандарта.
  • Данные даты записываются в файл в универсальном формате даты. Когда компонент даты или времени отсутствует или равен нулю, в файл записывается только предоставленная часть.
  • В файл ничего не записывается, если для данных outputlist задано значение Empty. Однако для данных #NULL#null записывается.
  • Если выходные данные списка являются данными NULL , #NULL# записывается в файл.
  • Для данных об ошибке выходные данные отображаются как #ERROR errorcode#. Ключевое слово Error не переводится, независимо от языкового стандарта.

В отличие от оператора Print # , инструкция Write # вставляет запятые между элементами и кавычки вокруг строк при их записи в файл. Вставлять явные разделители в список не нужно. Write # вставляет символ новой строки, т. е. каретки return-linefeed (Chr(13) + Chr(10) ), после того как он записывает в файл последний символ из списка выходных данных.

Примечание.

Не следует писать строки, содержащие внедренные кавычки, например для "1,2""X" использования с оператором Input# ; Input # анализирует эту строку как две полные и отдельные строки.

Пример

В этом примере оператор Write # используется для записи необработанных данных в последовательный файл.

Open "TESTFILE" For Output As #1    ' Open file for output. 
Write #1, "Hello World", 234    ' Write comma-delimited data. 
Write #1, ' Write blank line. 
 
Dim MyBool, MyDate, MyNull, MyError 
' Assign Boolean, Date, Null, and Error values. 
MyBool = False : MyDate = #February 12, 1969# : MyNull = Null 
MyError = CVErr(32767) 
' Boolean data is written as #TRUE# or #FALSE#. Date literals are  
' written in universal date format, for example, #1994-07-13#  
 'represents July 13, 1994. Null data is written as #NULL#.  
' Error data is written as #ERROR errorcode#. 
Write #1, MyBool ; " is a Boolean value" 
Write #1, MyDate ; " is a date" 
Write #1, MyNull ; " is a null value" 
Write #1, MyError ; " is an error value" 
Close #1    ' Close file. 

См. также

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

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