Записывает отформатированные данные в файл с последовательным доступом.
Print #номерФайла, [списокВывода]
Параметры
номерФайла
Обязательный. Любой допустимый номер
файла.
списокВывода
Необязательный. Выражение или список
выражений, которые следует напечатать.
Ниже приведены допустимые значения
аргумента списокВывода:
Spc(n) Используется для вставки пробелов в файл; здесь n число пробелов, которые следует вставить. Tab(n) Устанавливает курсор в столбец с указанным номером; здесь n номер столбца. Tab без аргумента устанавливает курсор в начало следующей зоны печати. выражение Числовые выражения или строковые выражения, которые следует напечатать. позиция Указывает позицию, в которой следует печатать следующий символ. Для установки курсора сразу после последнего напечатанного символа используйте точку с запятой. Для установки курсора в столбец с указанным номером используйте Tab(n). Для установки курсора в начало следующей зоны печати используйте Tab без аргумента. Если аргумент позиция опущен, следующий символ печатается на следующей строке.
Замечания
Данные, записанные с помощью инструкции Print #, обычно
считываются из файла с помощью инструкций Line Input # или
Input.
Если аргумент списокВывода опущен, после аргумента номерФайла
идет только разделитель списка, в файл печатается пустая строка. Для разделения
выражений можно использовать пробелы или точки с запятой, которые в данной
ситуации полностью эквивалентны.
При выводе логических данных (тип
Boolean) в файл записываются слова True или False. Ключевые
слова True и False не переводятся, вне зависимости от национальной
настройки.
При выводе данных типа Date используется текущий краткий
системный формат даты. Если компонент, описывающий дату или время, отсутствует
или равен нулю, в файл записывается только имеющийся в наличии
компонент.
Если списокВывода имеет значение Empty, в файл ничего не
записывается. Однако если списокВывода имеет значение Null, в файл
записывается ключевое слово Null.
Данные типа Error
записываются в файл как Error кодОшибки. Ключевое слово Error не
переводятся, вне зависимости от национальной настройки.
Инструкция Print
# записывает в файл данные, отформатированные с учетом национальной
настройки. Это означает, в частности, что используется соответствующий
разделитель целой и дробной части числа.
Поскольку инструкция Print #
записывает в файл отформатированные данные, необходимо использовать разделители
данных, обеспечивающие правильную печать. Если Tab без аргумента
используется для перемещения позиции вывода в начало следующей зоны печати,
Print # также записывает пробелы между полями печати в файле.
Для
записи в файл данных, который в будущем планируется читать с помощью инструкции
Input #, следует вместо инструкции Print # использовать инструкцию
Write #. Использование инструкции Write # гарантирует, что
записанные данные будут корректно разделены, что позволит прочитать их с помощью
инструкции Input #. Кроме того, файлы, записанные с помощью инструкции
Write #, могут быть корректно прочитаны при наличии любых национальных
настроек.
Пример
В данном примере инструкция Print # используется для записи
данных в файл.
Open "TESTFILE" For Output As #1 ' Открывает файл для записи. Print #1, "Пример" ' Печатает текст в файл. Print #1, ' Печатает пустую строку в файл. Print #1, "Зона 1"; Tab ; "Зона 2" ' Печатает в двух зонах печати. Print #1, "Пример" ; " " ; "всем" ' Строки разделяются пробелом. Print #1, Spc(5) ; "5 пробелов" ' Печатает пять пробелов. Print #1, Tab(10) ; "Привет" ' Печатает слово в столбце 10. ' Присваивает значения типа Boolean, Date, Null и Error. Dim MyBool, MyDate, MyNull, MyError MyBool = False : MyDate = #February 12, 1969# : MyNull = Null MyError = CVErr(32767) ' Вместо слов True, False, Null и Error записываются слова, ' соответствующие им в текущем языке. Текстовые константы даты ' записываются в кратком системном формате даты. Print #1, MyBool ; " - логическое значение" Print #1, MyDate ; " - дата" Print #1, MyNull ; " - значение Null" Print #1, MyError ; " - значение типа Error" Close #1 ' Закрывает файл.