Конец упражнения 10-1
C. Функции файлового ввода/вывода
Функции файлового ввода/вывода производят файловые операции записи и считывания данных. Функции файлового ввода/вывода расположены в палитре Functions>>File I/O и предназначены для:
Открытия и закрытия файла данных.
Считывания и записи данных из/в файл(а).
Считывания и записи данных из/в файл(а) в виде таблицы символов.
Перемещения и переименования файлов и каталогов.
Изменения характеристик файла.
Создания, изменения и считывания файлов конфигурации.
Функции файлового ввода/вывода
Палитра функций файлового ввода вывода, показанная ниже, разделена на три части: функции высокого уровня (high level File I/O), функции низкого уровня (low level File I/O) и подпалитра функций расширенных возможностей (advanced File I/O).
Функции файлового ввода/вывода высокого уровня
Функции файлового ввода/вывода высокого уровня расположены в верхней строке палитры Functions>>File I/O. Они предназначены для выполнения основных операций по вводу/выводу данных.
Использование функций файлового ввода/вывода высокого уровня позволяет сократить время и усилия программистов при записи и считывании данных в/из файл(а). Функции файлового ввода/вывода высокого уровня выполняют запись и считывание данных и операции закрытия и открытия файла. При наличии ошибок функции файлового ввода/вывода высокого уровня отображают диалоговое окно с описанием ошибок и предлагают на выбор: продолжить выполнение программы или остановить ее. Однако из-за того, что функции данного класса объединяют весь процесс работы с файлами в один ВП, переделать их под определенную задачу бывает трудно. Для специфических задач следует использовать функции файлового ввода/вывода низкого уровня.
Функции файлового ввода/вывода низкого уровня
Функции файлового ввода/вывода низкого уровня расположены в средней строке палитры Functions>>File I/O. Дополнительные функции работы с файлами (Advanced File I/O) расположены в палитре Functions>>File I/O>>Advanced File Functions и предназначены для управления отдельными операциями над файлами.
Функции файлового ввода/вывода низкого уровня используются для создания нового или обращения к ранее созданному файлу, записи и считывания данных и закрытия файла. Функции низкого уровня работы с файлами поддерживают все операции, необходимые при работе с файлами.
Основы файлового ввода/вывода
Стандартные операции ввода/вывода данных в/из файла состоят из следующей последовательности действий:
Создание или открытие файла. Указание месторасположения существующего файла или пути для создания нового файла с помощью диалогового окна LabVIEW. После открытия файл LabVIEW создает ссылку на него. Более подробную информацию о ссылке на файл можно найти в разделе Сохранение данных в новом или уже существующем файле.
Произведение операций считывания или записи данных в/из фал(а).
Закрытие файла.
Обработка ошибок.
Для осуществления основных операций файлового ввода/вывода используются следующие ВП и функции:
|
|
|
|
|
|
|
|
Обработка ошибок
|
Подпрограммы ВП и функции низкого уровня содержат информацию об ошибках. Для их обработки используютсяподпрограммы обработки ошибок, такие какSimple Error Handler VI(ВП Простой обработчик ошибок), расположенный в палитреFunctions>>Time & Dialog. Поля вводаerror inи вывода error out информации об ошибках используются в каждом ВП для обмена информацией об ошибках между ВП. |
Во время работы ВП LabVIEW проверяет наличие ошибок в каждом узле.Если LabVIEW не находит ошибок, то узел выполняется нормально.Если LabVIEW обнаруживает ошибку в одном узле, то его выполнение прерывается, а информация об ошибке передается следующему узлу. Следующий узел поступает так же, и в конце выполненияLabVIEWсообщает об ошибках.
Сохранение данных в новом или уже существующем файле
В файл, созданный (или открытый) с помощью функций файлового ввода/вывода, можно записать данные любого типа. При необходимости доступа к файлу со стороны других приложений или пользователей, следует записывать данные в виде строкиASCIIсимволов. Более полную информацию о записи бинарных файлов и файлов регистрации данных можно найти в учебном курсе LabVIEW Основы II.
Доступ к файлу можно осуществить программным путем или с использованием диалогового окна.Для доступа к файлу с помощью диалогового окна на поле вводаfile path подпрограммы ВПOpen/Create/Replace File VIне следует подавать данные.Программный доступ к файлу экономит время. Приведенная ниже таблица демонстрирует организацию путей к файлам.
-
Платформа
Путь к файлу
Windows
Состоит из имени дисковода, двоеточия, обратного слэша, разделяющего директории, и имени файла. Например,
c:\testdata\test1.dat - путь к файлу test1.datв папке testdata
UNIX
Состоит из прямого слэша, разделяющего директории, и имени файла. Например, /home/testdata/test1.dat – путь к файлу test1.datв папкеtestdata в каталогеhome. Имя фала и имя директории чувствительны к регистру символов.
MacOS
Состоит из имени диска,двоеточия, имен папок,разделенных двоеточиями, и имени файла. Например,
Hard Disk:testdata:test1.dat - путь к файлуtest1.datв папкеtestdata на дискеHard Disk
В приведенном ниже примере показано, как записатьстроку данных вфайл при программном указании пути и имени файла. Если файл уже существует, то он перезаписывается, если нет - то создается новый файл.
Подпрограмма ВП Open/Create/Replace File VI открывает файл test1.dat. ВП также создает ссылку на файл и кластер ошибок.
Совет |
Ссылка (refnum) является уникальным идентификатором для таких объектов как файл, прибор и сетевое соединение. |
При открытии файла, устройства или сетевого соединения LabVIEW создает ссылку на объект.Все операции с открытыми объектами выполняются с использованием ссылок.
Кластер ошибок и ссылка на файл последовательно передаются от узла к узлу. Поскольку узел не может выполниться, пока не определены все его входные поля данных, эти два параметра заставляют узлы работать в определенном порядке.Подпрограмма ВП Open/Create/Replace File VI передает ссылку на файл и кластер ошибок функцииWrite File,которая производит запись файла на диск. Функция Close File закрывает файл после получения кластера ошибок и ссылки на файл из функции Write File.
Подпрограмма ВП Simple Error Handler VI проверяет наличие ошибок и выводит информацию о них в диалоговом окне. Если в одном из узлов допущена ошибка, последующие узлы не выполняются, и кластер ошибок передается в подпрограмму ВПSimple Error Handler VI.
Упражнение 10-2 ВП Запись в файл