Операторы-функции для записи существующих данных в файл.
Операторы-функции для чтения данных из файла.
Считывание данных из файла в индексированную переменную.
Использование функции чтения в выражениях.
Задание связанной с файлом переменной ( для обращения к файлу по имени переменной ).
Расширение имени файла по умолчанию.
Добавление данных в файл.
Запись и чтение комплексных данных.
Файл данных в MathCADe - это текстовый ASCII-файл на диске, содержащий числа, разделенные пробелами, запятыми, точкой с запятой, символами табуляции, перевода строки и возврата каретки.
Для записи данных в файл, используются операторы-функции:
WRITE(имя):=элемент_вывода или
WRITEPRN(имя):=элемент_вывода
Здесь имя - имя файла или имя переменной, связанной с файлом.
элементом_вывода могут быть число, выражение, переменная (простая и индексированная), массив.
При использовании оператора WRITE данные записываются в одну строку.
При использовании оператора WRITEPRN данные записываются по строкам (например, каждый элемент вектора или каждая строка матрицы записывается в отдельную строку).
Например, для
Оператор
Содержимое файла
WRITE(DAT1.TXT):= x
1 3 5
WRITE(DAT2.TXT):= m
1 -2 4 0 5 2
WRITE(DAT3.TXT):= i2
1 4 9 16
WRITEPRN(DAT4.TXT):= x
WRITEPRN(DAT5.TXT):= m
1 -2
4 0
5 2
WRITEPRN(DAT6.TXT):= i2
Для чтения данных из файла, используются операторы-функции:
элемент_ввода:=READ(имя) или
элемент_ввода:=READPRN(имя)
Элементом ввода может быть имя или индексированная переменная. Тип элемента ввода имя (простая переменная или массив) определяется структурой файла и видом оператора чтения (READ или READPRN).
Так, например, при использовании оператора
a:=READ(имя_файла_или_переменной_с_именем_файла)
элемент ввода a будет простой переменной и примет значение первого числа указанного файла. Когда элементом ввода является индексированная переменная, тогда при использовании оператора READ данные считываются из файла последовательно до тех пор, пока индексная переменная не примет все свои значения или не будет достигнут конец файла.
Функцию READ можно использовать и при записи выражений. Например, пусть задано выражение:
a := READ(data) READ(data) + READ(data),
где data - имя файла данных. Тогда переменная a примет значение, являющееся результатом произведения первых двух элементов файла данных, сложенного с третьим его элементом.
При использовании оператора READPRN данные считываются построчно (при этом файл должен быть создан оператором WRITEPRN), определяя элемент вывода как массив. Структура массива полностью соответствует структуре файла.
Например,
Задание связанной с файлом переменной осуществляется с помощью команды Filename. В строке сообщений вам будет предложено ввести имя переменной и имя файла, с которым она будет связана. В дальнейшем к файлу можно будет обращаться по имени переменной.
Например, пусть переменная dfile связана с файлом DATA.TXT. Тогда оператор чтения из файла можно задать в виде:
x:=READ(dfile)
Для одного файла можно одновременно использовать несколько переменных.
При использовании операторов READ и WRITE имя файла по умолчанию имеет расширение DAT. При использовании операторов READPRN и WRITEPRN расширение имени файла по умолчанию принимается как PRN.
Каждое обращение к функциям WRITE и WRITEPRN предполагает открытие нового файла. Если файл с указанным именем уже существует, старый файл удаляется.
В MathCADe есть операторы, которые позволяют добавить данные в файл. Их формат:
APPEND(имя):=элемент_вывода
APPENDPRN(имя):=элемент_вывода
При использовании оператора APPEND данные записываются в строку. При каждом обращении к оператору формируется новая строка.
Замечание: Вы можете считывать данные из файлов, созданных с помощью текстовыx редакторов, программ пользователя, электронных таблиц. При этом числа в файле данных могут разделяться любой комбинацией нецифровых символов, в том числе и пробелами.
Например, пусть файл данных DATA.DAT создан с помощью текстового редактора и имеет следующий вид: