Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Функции файлового ввода/вывода



Функции файлового ввода/вывода производят файловые операции записи и считывания данных. Функции файлового ввода/вывода расположены в палитре Functions»Programming»File I/O и предназначены для:

▪ Открытия и закрытия файла данных.

▪ Считывания и записи данных из/в файл(а).

▪ Считывания и записи данных из/в файл(а) в виде таблицы символов.

▪ Перемещения и переименования файлов и каталогов.

▪ Изменения характеристик файла.

▪ Создания, изменения и считывания файлов конфигурации.

 

Функции файлового ввода/вывода

Палитра функций файлового ввода вывода, показанная ниже ( Рис. 153 ), разделена на три части: функции высокого уровня ( high level File I/O ), функции низкого уровня ( low level File I/O ) и подпалитра функций расширенных возможностей ( advanced File I/O ).

 
 

Рис.153 Палитра функций файлового ввода вывода.

 

Функции файлового ввода/вывода высокого уровня

Функции файлового ввода/вывода высокого уровня расположены в верхней строке палитры Functions»Programming»File I/O. Они предназначены для выполнения основных операций по вводу/выводу данных. Более подробную информацию можно получить в разделе E Использование файлового ввода/вывода высокого уровня.

Использование функций файлового ввода/вывода высокого уровня позволяет сократить время и усилия программистов при записи и считывании данных в/из файл(а). Функции файлового ввода/вывода высокого уровня выполняют запись и считывание данных и операции закрытия и открытия файла. При наличии ошибок функции файлового ввода/вывода высокого уровня отображают диалоговое окно с описанием ошибок и предлагают на выбор: продолжить выполнение программы или остановить ее. Однако из-за того, что функции данного класса объединяют весь процесс работы с файлами в один ВП, переделать их под определенную задачу бывает трудно. Для специфических задач следует использовать функции файлового ввода/вывода низкого уровня.

 

Функции файлового ввода/вывода низкого уровня

Функции файлового ввода/вывода низкого уровня расположены в средней строке палитры Functions»Programming»File I/O. Дополнительные функции работы с файлами ( Advanced File I/O ) расположены в палитре Functions»Programming»File I/O»Advanced File Functions и предназначены для управления отдельными операциями над файлами.

Функции файлового ввода/вывода низкого уровня используются для создания нового или обращения к ранее созданному файлу, записи и считывания данных и закрытия файла. Функции низкого уровня работы с файлами поддерживают все операции, необходимые при работе с файлами. Информация о дополнительных возможностях функций работы с файлами изложена в учебном курсе LabVIEW Основы II.

 

Основы файлового ввода/вывода

Стандартные операции ввода/вывода данных в/из файла состоят из следующей последовательности действий:

1. Создание или открытие файла. Указание месторасположения существующего файла или пути для создания нового файла с помощью диалогового окна LabVIEW. После открытия файл LabVIEW создает ссылку на него. Более подробную информацию о ссылке на файл можно найти в разделе Сохранение данных в новом или уже существующем файле.

2. Произведение операций считывания или записи данных в/из фал(а).

3. Закрытие файла.

4. Обработка ошибок.

 

Для осуществления основных операций файлового ввода/вывода используются следующие ВП и функции:

· Open/Create/Replace File – открывает, перезаписывает существующий файл, или создает новый. Если file path (путь размещения файла) не указан, ВП выводит на экран диалоговое окно, в котором можно создать новый или выбрать уже существующий файл.

· Read File – считывает данные из файла, определяемого по ссылке refnum, и выдает данные на поле вывода data, на поле count подается значение количества считываемых данных. Считывание данных начинается с места, определяемого элементами pos mode и pos offset, и зависит от формата файла.

· Write File – записывает данные в файл, определяемый по ссылке refnum. Запись начинается с места, определяемого полями ввода данных pos mode и pos offset для файла потока байтовых данных, и указателем конца файла для файла протоколированных данных.

· Close File – закрывает указанный в ссылке refnum файл.

 

Обработка ошибок

Подпрограммы ВП и функции низкого уровня содержат информацию об ошибках. Для их обработки используются подпрограммы обработки ошибок, такие как Simple Error Handler VI (ВП Простой обработчик ошибок), расположенный в палитре Functions»Programming»Dialog & User Interface. Поля ввода error in и вывода error out информации об ошибках используются в каждом ВП для обмена информацией об ошибках между ВП.

Во время работы ВП LabVIEW проверяет наличие ошибок в каждом узле. Если LabVIEW не находит ошибок, то узел выполняется нормально. Если LabVIEW обнаруживает ошибку в одном узле, то его выполнение прерывается, а информация об ошибке передается следующему узлу. Следующий узел поступает так же, и в конце выполнения LabVIEW сообщает об ошибках.

 

Сохранение данных в новом или уже существующем файле

В файл, созданный (или открытый) с помощью функций файлового ввода/вывода, можно записать данные любого типа. При необходимости доступа к файлу со стороны других приложений или пользователей, следует записывать данные в виде строки ASCII символов. Более полную информацию о записи бинарных файлов и файлов регистрации данных можно найти в учебном курсе LabVIEW Основы II.

Доступ к файлу можно осуществить программным путем или с использованием диалогового окна. Для доступа к файлу с помощью диалогового окна на поле ввода file path подпрограммы ВП Open/Create/Replace File VI не следует подавать данные. Программный доступ к файлу экономит время. Приведенная ниже Таблица 3 демонстрирует организацию путей к файлам.

 

Таблица 3. Организация путей к файлам.

Платформа Путь к файлу
Windows Состоит из имени дисковода, двоеточия, обратного слэша, разделяющего директории, и имени файла. Например, c: \testdata\test1.dat - путь к файлу test1.dat в папке testdata
UNIX Состоит из прямого слэша, разделяющего директории, и имени файла. Например, /home/testdata/test1.dat – путь к файлу test1.dat в папке testdata в каталоге home. Имя фала и имя директории чувствительны к регистру символов.
MacOS Состоит из имени диска, двоеточия, имен папок, разделенных двоеточиями, и имени файла. Например, Hard Disk: testdata: test1.dat - путь к файлу

 

В приведенном ниже примере показано, как записать строку данных в файл при программном указании пути и имени файла ( Рис. 154 ). Если файл уже существует, то он перезаписывается, если нет - то создается новый файл.

Рис.154

 
 

Запись строки данных в файл при программном указании пути

и имени файла.

Подпрограмма ВП 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.


 

Упражнение 9-2 ВП Запись файла

Цель: Записать данные в файл.

Ниже приведена последовательность действий для создания ВП, который объединяет строку, числовые данные и модуль строки в файл. В упражнении 9-3 будет создан ВП, который считывает и отображает его содержимое.

Лицевая панель

1.

 
 

Откройте новый ВП и оформите лицевую панель, как показано ниже ( Рис. 155 ):

Рис.155 Лицевая панель.

a. В палитре Controls»Modern»String & Path выберите элемент отображения пути. Этот элемент отобразит путь к созданному файлу данных.

b. Щелкните правой кнопкой мыши по элементу Строка для записи и в контекстном меню выберите пункт Visible Items»Scrollbar.

 

Блок-диаграмма

2.

 
 

Постройте следующую блок-диаграмму ( Рис. 156 ):

Рис.156 Блок – диаграмма.

 

Выберите в разделе Functions»Select a VI ВП Компоновка строки.vi, созданный в упражнении 9-1, и поместите его на блок- диаграмму. Этот ВП объединяет три строки в одну.

Поместите на блок-диаграмму подпрограмму ВП Open/Create/Replace File VI, расположенную в палитре Functions»Programming»File I/O. Этот ВП выводит на экран диалоговое окно для создания файла.

a. Щелкните правой кнопкой мыши по полю prompt и в контекстном меню выберите пункт Create»Constant для создания константы Введите имя файла. При запуске ВП появится окно выбора файла, которое будет называться Введите имя файла.

Выберите функцию Write File, расположенную в палитре
Functions»Programming»File I/O. Эта функция записывает
объединенную строку в файл.    

b.

       
   
 
 

Щелкните правой кнопкой мыши по входному полю function и в контекстном меню выберите пункт Create»Constant. Для выбора пункта выпадающего меню create or replace следует использовать инструмент УПРАВЛЕНИЕ.

Выберите функцию Close File, расположенную в палитре

Functions»Programming»File I/O. Эта функция закрывает файл.

 

Выберите подпрограмму ВП Simple Error Handler VI, расположенную в палитре Functions»Programming»Dialog & User Interface. Этот ВП проверяет кластер ошибок и выводит диалоговое окно при возникновении ошибки.

3. Сохраните ВП под именем Запись файла.vi.

 


Запуск ВП

4. Поменяйте значения элементов управления на лицевой панели и запустите ВП. Появится диалоговое окно Введите имя файла.

5. Введите в диалоговое окно название файла демофайл.txt и нажмите на кнопку Save или OK.

ВП запишет в файл данные из элементов Строка для записи, Число для записи и Единица измерения для записи.

6. Закройте ВП.


 


Поделиться:



Популярное:

Последнее изменение этой страницы: 2017-03-10; Просмотров: 1085; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.034 с.)
Главная | Случайная страница | Обратная связь