Функции > Чтение и запись файлов > Файлы данных в формате ASCII с разделителями
  
Файлы данных в формате ASCII с разделителями
Для чтения из файлов ASCII и записи в них имеется три функции.
Функция READPRN("file") возвращает массив, в котором размещено содержимое ASCII-файла.
Файлы должны содержать только текст в кодировке ASCII, расположенный в виде строк и столбцов, разделенных пробелами или знаками табуляции. Допускается заголовок текста, но как только функция READPRN встретит число, она будет считать, что начались данные, поэтому в заголовках не должно быть чисел. Когда в PRN-файл записываются комплексные или строковые значения или вложенные матрицы, создается заголовок, позволяющий функции READPRN восстановить массив. Чтобы осуществлять чтение большего числа типов данных и иметь больше возможностей по управлению процессом, используйте функцию READFILE.
Файлы данных могут содержать числа в инженерном формате, комплексные числа, строки и вложенные массивы. Данные не должны быть в шестнадцатеричном, восьмеричном или бинарном формате.
Для чтения бинарных файлов используйте функцию READBIN. Чтобы осуществлять чтение из файлов в форматах других приложений или с большими возможностями по управлению импортом, используйте компоненты данных.
Функция WRITEPRN("file", M, [rows, [cols, ["decsymb"]]]) записывает содержимое массива M в ASCII-файл с разделителями.
Следует помнить, что для вычисления выражения в документе PTC Mathcad оно должно быть записано в виде назначения или запроса на вычисление, например:
Функция APPENDPRN("file", M) записывает содержимое массива M в конец ASCII-файла с разделителями. Число столбцов в массиве должно совпадать с числом столбцов в существующем файле. Если файл не существует, то функция APPENDPRN создаст его. Чтобы записать файл, нужно вычислить функцию, как описано в примере с функцией WRITEPRN.
Аргументы
"file" — строка, содержащая имя файла или полный путь и имя файла. Неабсолютные пути к файлам считаются заданными по отношению к текущей рабочей папке.
M — массив или (для функции WRITEPRN) скаляр.
rows (необязательный) — скаляр, указывающий строку матрицы M, с которой следует начинать запись в файл, или 2-мерный вектор, указывающий диапазон строк матрицы M (включительно), которые нужно записать. Если этот аргумент пропущен, функция WRITEPRN запишет все строки матрицы в файл.
cols (необязательный) — скаляр, указывающий столбец матрицы M, с которой следует начинать запись в файл, или 2-мерный вектор, указывающий диапазон столбцов матрицы M (включительно), которые нужно записать. Если этот аргумент пропущен, функция WRITEPRN запишет все столбцы матрицы в файл.
decsymb (необязательный) — используемый десятичный разделитель. Можно использовать только "." (точку).
Дополнительная информация
rows и cols - это индексы, которые начинаются с 1.
ORIGIN не влияет на поведение функций READPRN и APPENDPRN.
Переменная документа PRNPRECISION определяет число значащих цифр, которые должны использоваться в WRITEPRN или APPENDPRN.
Переменная документа PRNCOLWIDTH управляет шириной столбцов в ASCII-файлах, создаваемых функциями WRITEPRN и APPENDPRN.
Пропускать необязательные аргументы можно только начиная с последнего аргумента и в обратном порядке. Например, в функции WRITEPRN нельзя пропустить rows и указать cols и decsymb. Если аргумент rows пропущен, значение аргумента cols будет интерпретировано как строки.