
5 Функции файлового ввода/вывода высокого уровня
Функции файлового ввода/вывода высокого уровня расположены в верхней строке палитры Functions=>File I/O. Они предназначены для выполнения основных операций по вводу/выводу данных.
Использование функций файлового ввода/вывода высокого уровня позволяет сократить время и усилия программистов при записи и считывании данных в/из файл(а). Функции файлового ввода/вывода высокого уровня выполняют запись и считывание данных и операции закрытия и открытия файла. При наличии ошибок файловые функции высокого уровня отображают диалоговое окно с описанием ошибок, в котором пользователю предлагается продолжить выполнение программы или остановить ее. Однако из-за того, что функции данного класса объединяют весь процесс работы с файлами в один ВП, переделать их под определенную задачу бывает трудно. Для специфических задач следует использовать функции файлового ввода/вывода низкого уровня.
Функции файлового ввода/вывода высокого уровня включают в себя:
Таблица 2
|
Write to Spreadsheet File – преобразует 2D или 1D массив числовых данных одинарной точности в текстовую строку и записывает строку в новый или добавляет в уже существующий файл. При этом можно также транспонировать данные. ВП открывает или создает файл перед записью и после всех операций закрывает его. Этот ВП используется для создания текстовых файлов, читаемых большинством текстовых редакторов и редакторов электронных таблиц. |
|
Read From Spreadsheet File – считывает определенное число строк от начального смещения start of read offset и преобразует данные в 2D массив числовых данных одинарной точности. ВП открывает файл перед чтением и после всех операций закрывает его. Этот ВП можно использовать для чтения таблицы символов, сохраненной в текстовом формате. |
|
Write Characters to File –записывает строку символов в новый файл или добавляет ее в уже существующий. ВП открывает или создает файл перед записью и после всех операций закрывает его. |
|
Read Characters From File – считывает количество символов number of characters от начального смещения start of read offset. ВП открывает файл перед чтением и после всех операций закрывает его. |
|
Read Lines From File – считывает определенное число строк из текстового или бинарного файла с положения start of read offset. ВП открывает файл перед чтением и закрывает его после. |
6 Экспресс вп
Для наибольшего удобства разработчика в LabVIEW имеются две экспресс функции для работы с файлами: Write LabVIEW Measurement File и Read LabVIEW Measurement File. Удобство экспресс ВП заключается в том, что они конфигурируются при помощи диалога и требуют минимального присоединения проводников. Файловые экспресс-функции работают со специальным типом файлов LabVIEW Measurement File, имеющим расширение .lvm. Данные в таких файлах представлены в текстовом виде, их при необходимости легко просмотреть и отредактировать любым текстовым редактором.
Таблица 3
|
Write Lab VIEW Measurement File – Запись в lvm-файл. Входные данные (скалярная величина, массив, осциллограмма, набор осциллограмм) подаются на терминал Signals, имеющий динамический тип. В диалоге имеется возможность настроить: • Сохранять поступающие (от разных запусков ВП) данные в один файл или сохранить серию файлов. • Имя файла или маску, по которой будут создаваться имена файлов. • Описание файла. |
|
Read Lab VIEW Measurement File – Считывание из lvm-файла. На выход Signals поступают данные предварительно записанные функцией Write Lab VIEW Measurement File. В диалоге можно настроить: • Фиксированное имя файла • Возможность запроса имени от пользователя. Так же в диалоге можно произвести тестовое считывание и данные в виде таблицы |
Необходимо заметить, что динамический тип кроме непосредственно данных может содержать и дополнительную информацию: имена осциллограмм, метки времени и т.д., для сохранения считывания которой файловые экспресс ВП наиболее удобны.
Индивидуальные задания
Задание 1. Создать ВП для обработки матриц с использованием функций файлового ввода/вывода низкого уровня.
Задание 2. Создать ВП для обработки матриц с использованием функций файлового ввода/вывода высокого уровня.
Задание 3. Информация считывается из текстового файла 1.txt, содержащего четыре строки – Иванов, 1, Петров, 0. Считываемые данные представляются в виде одной строки, которая в последствии разбивается при помощи функции Functions=>String=>Scan From String. Формируемая строка задает последовательность и тип данных в сканируемой строке (%s %b %s і т.д.). Строковые данные объединяются в двумерный массив при помощи функции Functions=>Array=>Build Array, транспонируются и выводятся в таблицу. Числовые (0 или 1) анализируются, переводятся в булевые значения и подаются на индикаторы.
-
Текстовый файл: 1.txt