Робота з файлами у LabVIEW

Робота з файлами і базами даних

Робота з файлами у LabVIEW

Postby Akceptor on 19 Sep 2012, 16:15

Будь-яка мова програмування не може залишатися cosa in se, адже програма як мінімум повинна десь зберігати дані і звідкись їх отримувати. Масиви вирішують проблему лише частково, бо також зберігаються у пам’яті і не можуть бути перенесені з однієї машини на іншу. Традиційно для зберігання інформації на фізичних носіях у мовах програмування передбачено засоби для роботи із файлами.

:labview: у цьому плані не є винятком: для роботи з файлами і каталогами тут існує велика кількість :vi: , як досить простих, так і гнучких. Всі відповідні піктограми знаходяться у палітрі “File I/O” (InPut/OutPut), що має вигляд дискетки.
Image
Розглянемо вміст палітри детальніше. Перший рядок містить інструменти для роботи з таблиними та текстовими файлами: Write to Spreadsheet File/Read from Spreadsheet File, Write Characters to File/Read Characters from File, Read Lines from File та іконку палітри для роботи з двійковими файлами.

Перших дві функції служать для запису у файл та читання з нього даних, поданих у табличній формі (наприклад дуже зручно використовувати їх для роботи із форматом *.CSV (Comma Separated Value; значення, розділені комами).

Якщо ми плануємо записувати дані у файл, то слід вказати шлях до нього (або за замовчуванням з’явиться діалогове вікно для вказання шляху), власне масив даних (який може бути одно- або двовимірним), розділювач (за замовчуванням це символ табуляції) та формат подання даних (наприклад вказати кількість цифр після коми). Також можна забезпечити дописування даних в кінець існуючого файлу (append). У випадку читання даних із файлу використовується ще термінал “Number of Rows” (кількість рядків) та кілька необов’язкових терміналів, що служать для “навігації” всередині таблиці.

Аналогічно використовуються і вузли Write Characters to File/Read Characters from File, що служать для запису та читання текстових даних. При записі на вхід відповідного вузла слід подати текстову величину; при читанні отримуємо текст із файлу, при чому можна вказати позицію, з якої почнеться читання, і кількість символів, яку необхідно отримати з файлу. Функція Read Lines from File зчитує інформацію з файлу цілими лініями (признак кінця лінії – символ EOL) і працює аналогічно.

У наступному рядку уваги заслуговують 4 функції, першою з яких є Open/Create/Replace File – як видно із назви, вона служить для створення, відкривання та заміни існуючого файлу. Функціями Read File та Write File доцільно користуватися тоді, коли потрібно працювати із файлами зі складними даними (дані можна згрупувати у кластер і записати у файл). І, нарешті, функція Close закриває відкритий раніше файл.

Тут слід зауважити наступну річ: якщо використовувати функції із першого рядка палітри, то операції відкриття і закриття файлів вони здійснюють автоматично. У випадку використання Read File та Write File файл треба відкрити перед доступом до нього і закрити після виконання всіх операцій. У такому випадку з’єднувати пікограми слід через термінал refnum, що містить ідентифікатор файлового потоку.

Низькорівневі :vi: роботи з файлами можна знайти у підпалітрі “Advanced File Functions”. Вони дозволяють не лише створювати файли, але й копіювати та переміщувати їх, створювати каталоги, отримувати дерево каталогів та інформацію про диск, керувати правами доступу до файлів, тощо.
Image
Особливої уваги у цій палітрі заслуговує тільки нижній рядок, що містить функції для перетворення типів даних. За допомогою цих вузлів можна отримати шлях до файлу за його refnum-ідентифікатором, а також перетворювати шляхи до файлів у текстовий формат та у масив текстових величин, кожен з елементів якого є частиною повного шляху до файлу.
User avatar
Akceptor
beginner
beginner
 
Posts: 48
Joined: 05 Jun 2010, 15:57
Location: Івано-Франківськ
Medals: 1
Tutorials (1)
LabVIEW Version: 7.1 / 8.5
Karma: 11

Re: Робота з файлами у LabVIEW

Postby sofT on 02 Apr 2014, 00:30

Підкажіть будь-ласка як можна записати *.txt без використання діалогів?
sofT
interested
interested
 
Posts: 1
Joined: 02 Apr 2014, 00:25
LabVIEW Version: 12
Karma: 0

Re: Робота з файлами у LabVIEW

Postby AlexanderKonoval on 29 Apr 2014, 12:08

sofT, для уникнення діалогу, необхідно задати шлях до файлу, куди ви плануєте зберігати ваші данні. Для цього натисніть правою клавішою в лівому верхньому кутку іконки збереження в файл та тисните Create-Constant. В поле, шо зявиться, вводьте шлях до файлу. Якщо його не існує - система його створить. Якщо існує - то перезапише повністю данні в ньому.
колдооооовствооооо! (С)
AlexanderKonoval
adviser
adviser
 
Posts: 243
Joined: 03 Jan 2014, 19:37
Location: Украина, Киев
LabVIEW Version: 2016
Karma: 52


Return to Збереження даних

Who is online

Users browsing this forum: No registered users and 2 guests

cron