Cum se utilizează fișierul CSV
Formatul este definit ca text, linie cu linie, cu o înregistrare pe linie. Separatorul de linii este separatorul standard de pauză a liniei.
O înregistrare a datelor corespunde unei linii, valorile coloanelor individuale sunt separate una de cealaltă cu virgulă sau punct și virgulă. Delimiterul virgulei este folosit mai târziu în acest articol. Valorile coloanelor care conțin un caracter rezervat (virgulă) sunt închise în ghilimele duble ( „), în cazul în care valoarea găsită în ghilimele - acestea apar în fișierul ca două citate consecutive.
Pentru a importa un astfel de format în limba MUMPS, există două opțiuni - folosind un subset de limbaj standard pentru parsarea șirului și utilizarea funcțiilor avansate pentru a simplifica parsarea șirului specificat de o anumită regulă. Cea mai simplă opțiune din multe sisteme de programare care acceptă expresii regulate este utilizarea regexpovului.
Pentru a demonstra capacitățile de import, folosim un program de testare care citește fișierul și procesează procesarea liniilor pentru fiecare linie. În procesarea liniei, linia este analizată la valori separate și afișată pe ecran.
O citire line-by-line a unui fișier text cu transmiterea fiecărei linii către o subrutină:
Afișarea unei linii înainte de parsare și afișarea valorilor individuale după parsare:
Parsarea unei linii separate cu returnarea unui set de coloane ca listă:
Există trei expresii regulate - resplit să se împartă în valori distincte, reremove pentru a elimina formatarea siruri de caractere și înlocuirea duplicat de ghilimele simple.
Atunci când importați un fișier CSV dintr-un exemplu, utilitarul afișează diagnosticele cu parsarea rândurilor și a valorilor:
Utilitatea se ocupă de formatarea destul de complexă a datelor, recunoscând cazuri de spații și ghilimele inutile.
Pentru export, exemplul utilizează caracteristica funcției de sistem $ ZQUOTE () pentru a dubla citatele dacă sunt în șir și pentru a adăuga citatele înconjurătoare pentru o valoare care nu este un număr. Numerele sunt utilizate ca atare, fără decorare, pentru numerele cu o parte fracționată se utilizează un separator de puncte.
Tehnic vorbind, standard de format CSV distinge separator în funcție de setările regionale ale sistemului - în cazul în care punctul locales zecimal este un punct, virgula este folosita ca masa separatorului; în localizări unde separatorul zecimal este o virgulă, utilizați un punct și virgulă ca delimitator de tabel. Exemplul afișează numerele cu un separator de puncte zecimale, fără a utiliza localizarea sistemului. Prin urmare, o virgulă este folosită ca delimitator, acesta fiind cel mai frecvent caz.
Pentru a exporta date, rutina exemplului conține funcția de generare a acestora:
Și exportul în sine constă dintr-o funcție de ieșire de linie și o singură funcție de ieșire de linie:
Exemplul de mai sus este doar demonstrativ și prezintă capabilitățile sistemului MiniM de a lucra cu formate comune de fișiere de date. Exemplul folosește o reprezentare simplificată a unui șir de date ca listă. Într-un sistem de operare real, reprezentarea datelor poate fi diferită.