G PROGRAMMING Part #6
Dane łańcuchowe i funkcje plikowe I/O
Dane łańcuchowe (strings) String niezależna od platformy sekwencja wyświetlanych lub niewyświetlanych znaków ASCII Zastosowanie: wyświetlanie komunikatów sterowanie sprzętem przechowywanie danych na dysku Wstawianie: All Controls /String and Path (Express) Controls /Text (Controls/Indicators) Wyświetlanie: tabele pola tekstowe wskaźniki tekstowe
Tryby wyświetlania Normalny (domyślny) Wyświetlane znaki drukowane. Znaki niedrukowane kwadraty. Kodów \ (backslash) Kody \ dla znaków niedrukowanych. Hasło Gwiazdki dla wszystkich znaków. Szesnastkowy Kody szesnastkowe znaków.
Tabele Każda komórka tabeli stanowi łańcuch Nagłówki kolumn i wierszy nie są automatyczne Nagłówki = 1 wymiarowe tablice Przed wyświetleniem danych we wskaźniku typu string konieczna jest konwersja tablicy liczbowej do tablicy string
Ważniejsze funkcje łańcuchowe String Length Zwraca liczbę znaków łańcucha. Wliczane są spacje. Concatenate Strings Wyświetlane znaki drukowane. Znaki niedrukowane kwadraty.
Ważniejsze funkcje łańcuchowe Match Pattern Wykrywa zadeklarowany łańcuch i zwraca ciąg wykryty, przed, po i długość String Subset Zwraca część łańcucha począwszy od offset (od zera) o długości length.
Ważniejsze funkcje łańcuchowe Format Into String Konwertuje argumenty dowolnego formatu do postaci łańcucha Scan From String Wyszukuje dane numeryczne (0-9, plus, minus, separator, e/e.
Elementy składni określania formatu Scan From String %[Szerokość]Kod_konwersji Szerokość > 0.Precyzja i _Cyfr_Znaczących >= 0 Format Into String %[-][+][#][^][0][Szerokość][.Precyzja _Cyfr_Znaczących]Kod_konwersji [{Jednostka}] % - początek elementu Format Specifier [-][+][#][^][0] opcjonalne elementy formatowania (lewo, prawo,, usuwanie zer) Jednostka nadpisuje oryginalną jednostkę, o ile wprowadziło ją formatowanie Kody: x szesnastkowy o-ósemkowy b-dwójkowy d-dziesiętny (oznaczony +/-), u nieoznaczony dziesiętny f zmiennoprzecinkowy, ułamkowy (np. 12,345) e zmiennoprzecinkowy w notacji naukowej (np. 1,234E1)
Funkcje plikowe we/wy (VIs) Wykonywanie operacji plikowych tworzenie i otwieranie plików odczyt i zapis danych odczyt i zapis w gotowych formatach zamykanie plików 3 grupy funkcji Typowa kolejność operacji Create / Open Read /Write Close Intermediate High-level Zaawansowane LabVIEW files
Funkcje plikowe podstawowe VIs Otwieranie pattern szablon nazwy pliku; wyświetla pliki o nazwie zgodnej z szablonem; dostępne znaki wieloznaczne (*.vi) prompt nazwa okna dialogowego file path ścieżka dostępu do pliku z nazwą pliku start path folder początkowy; Not a path bieżący, Valid path konkretny wpisany function 0 open; 1 open/create, 2 create/replace, 3 create, 4 open for read default name początkowa nazwa domyślna pliku z okna dialogowego advisory dialog domyślnie TRUE, wyświetla komunikat błędu dla 0 lub 4 (z wejścia function), bo plik nie występuje oraz dla wartości 2 lub 3, gdy plik istnieje new file path ścieżka do tworzonego otwartego pliku (do przekazania dalej) file size maksymalny rozmiar pliku (lokalizacja EOF)
Obsługa błędów Refnum (reference number) unikalny identyfikator obiektu (plik, urządzenie, połączenie sieciowe, ) Error (line, cluster) przekazywanie informacji o nieprawidłowości działania zapobiega inicjowaniu programów w przypadku błędów węzeł rozpoczyna działanie po otrzymaniu wszystkich sygnałów, identyfikacja błędu (Klaster - All Controls /Array&Cluster /ErrorOut; Dialog All Functions / Time&Dialog /SimpleErrorHandler.vi): status logiczny (true jeśli błąd) code wartość integer identyfikatora błędu source lokalizacja źródła błędu
Zapis od pliku Open/Create/Replace otwiera okno dialogowe C:\ z zapisem pliku o rozszerzeniu (*.txt) Open/Create/Replace generuje refnum i klaster błędów Write File zapisuje dane Close File zamyka plik Simple Error Handler obsługuje błędy
Odczyt z pliku Open/Create/Replace otwiera plik Open/Create/Replace generuje refnum i klaster błędów Read File odczytuje określoną liczbę danych Close File zamyka plik Simple Error Handler obsługuje błędy
Formatowanie łańcuchów arkusza kalkulacyjnego Arkusz kalkulacyjny popularna forma magazynowania i analizy danych. Różnice w formatowaniu danych. Najpopularniejsze: kolumny rozdzielone znakami tabulacji, wiersze wyznaczone przez znaki końca linii.
Formatowanie łańcuchów arkusza kalkulacyjnego Zapis danych do pliku arkusza kalkulacyjnego Odczyt danych z pliku arkusza kalkulacyjnego
Plik pomiarowy LabVIEW - ZAPIS Write LabVIEW Measurement File Express VI Tworzy plik o rozszerzeniu LVM: -zawierający nagłówek z danymi o czasie operacji, operatorze, sposobie formatowania pliku, - dane będące wynikiem działania programu, -o możliwości deklarowania zawartości (nagłówek, nagłówki kolumn) i sposobu zapisywania pliku (obecność pliku o tej samej nazwie, tworzenie plików sekwencyjnych), - edytowalny w edytorze tekstu i arkuszu kalkulacyjnym. Wejścia / wyjścia: File Name - nazwa zapisywanego pliku z danymi Signals - jeden lub więcej sygnałów wejściowych Enable -włącza lub wyłącza proces zapisu Reset - ponownie wprowadza pierwotny stan Write LVM Express VI (od początku chyba że append) File Name Out nazwa zapisywanego pliku. Saving Data - wskaźnik wykonania zapisu.
Plik pomiarowy LabVIEW - ODCZYT Read LabVIEW Measurement File Express VI Otwiera pliki o rozszerzeniu LVM: - zawierający zapisane dane (np. pomiarowe), - zawierający dodatkowe dane nagłówka takie jak Opis i Komentarz wprowadzone za pomocą Write LVM Express VI. Wejścia / wyjścia: Description -wyświetla opis z nagłówka pliku LVM. Comment -wyświetla komentarz z nagłówka pliku LVM. EOF? - zwraca wartość TRUE jeśli Express VI osiągnął koniec pliku.
Wybrane funkcje plikowe Advanced File/Directory Info wyświetla informacje dotyczące pliku /katalogu określonego w path tj.: rozmiar, datę ostatniej modyfikacji i czy wybrany obiekt jest katalogiem. Volume Info wyświetla informacje o woluminie (dysku, partycji) zawierającym plik /katalog określony w ścieżce (path) tj.: cały rozmiar, miejsce zajęte i dostępne. List Directory zwraca dwie tablice nazw podkatalogów i plików z directory path zgodnie z maskami pattern i datalog type.
Wybrane funkcje plikowe Advanced Move przesuwa plik lub katalog z lokalizacji określonej w source path do lokalizacji target path (w przypadku katalogów przenoszona jest także zawartość). Copy kopiuje plik lub katalog z lokalizacji określonej w source path do lokalizacji target path (w przypadku katalogów przenoszona jest także zawartość). Delete usuwa plik lub katalog określony przez path. W przypadku katalogów innych niż puste lub przy braku praw dostępu generowany jest błąd.
Podsumowanie Dane łańcuchowe zbiór znaków ASCII o wielu zastosowaniach: wyświetlanie komunikatów, sterowanie urządzeniami operacje plikowe we/wy. Funkcje manipulowania na łańcuchach: długość, łączenie, dopasowywanie, podzbiór paleta Functions / grupa Strings Trzy poziomy hierarchii instrumentów plikowych we/wy: high-level, pośrednie, zaawansowane. Operacje na formacie arkusza kalkulacyjnego: tabulator separator kolumn, eol separator wierszy, gotowe funkcje wysokiego poziomu zapisu/odczytu arkuszy.
End of Part #6