Formatul formatului CSV
CSV (Valorile separate prin virgulă) - literal traduse ca "valori separate prin virgule". Acesta este un format de text pentru prezentarea datelor tabulare.
Fiecare linie este un rând din tabel.
Separatorul (delimiterul englez) al valorilor coloanelor este simbolul virgulei ",". Cu toate acestea, în practică, se folosesc adesea și alți delimitatori, de exemplu ";"
Valorile care conțin caractere rezervate (quote dublă, virgulă, punct și virgulă, șir nou) sunt înconjurate de ghilimele duble ("). Dacă valoarea întâlnește citate, acestea sunt reprezentate în fișier sub forma a două ghilimele la rând.
Puteți scrie următorul text și îl puteți salva într-un fișier cu extensia "csv":
Un astfel de fișier este ușor de deschis în Excel (sau în OpenOffice) și toate valorile sunt în celulele lor în tabel.
În mod similar, puteți prelua orice foaie de calcul Excel (cu extensii .xls sau .xlsx) și salvați-l în format CSV. Acesta este un format foarte simplu și nu suportă formule, calcule etc. ca formate Excel complete. Cu toate acestea, poate fi foarte convenabil să scrieți date din iMacros și apoi să le procesați în Excel și, invers, să luați informații din Excel și să le utilizați în scenariile dvs.
Notă: De fapt, Excel are și un format XML. care acceptă formule, stiluri de design și majoritatea funcțiilor Excel, este bazată pe text, nu binară, precum .xls sau .xlsx. Cu toate acestea, este mult mai complicat decât CSV și necesită o înțelegere mai profundă și abilități în codificare. Am putut genera ieșirea JS a rapoartelor cu formule încrucișate în Excel, sarcina fiind consumatoare de timp și consumatoare de timp.
În prima și ultima lecție, am certat caracteristicile standard ale lui iMacros în lucrul cu mesele. Înțeleg că au adăugat DATASOURCE și alte spirite rele, cu o funcționalitate extrem de trunchiată pentru utilizatorii obișnuiți, pentru a ușura viața laicului. Dar, sa dovedit exact opusul. Nu disperați, astăzi voi împărți cu dvs. decizia mea, care vă va permite să manipulați mesele așa cum doriți.
Pentru a încărca un fișier într-o variabilă, vom folosi codul pentru a citi fișierul din ultima lecție:
Aici este matricea pe care vreau să o văd ca rezultat:
În acest caz, vom avea o matrice cu trei elemente. Fiecare element al acestei matrice va avea o altă serie de valori numerice și de șir. Dacă vă gândiți puțin, deja avem cunoștințe suficiente pentru a implementa o astfel de transformare.
Formatare format CSV
La prima vedere, s-ar părea că putem folosi prost de două ori metoda split (). deoarece putem împărți textul într-o serie de șiruri folosind split ('\ r \ n'). și un șir la celule folosind split (','). deoarece folosim o virgulă ca separator. Acest lucru nu este în întregime adevărat, dacă avem text în unele celule conținând virgule, algoritmul nostru nu va funcționa corect.
Să adăugăm câteva virgule la datele sursă (test.csv):
De fapt, situațiile în care o astfel de abordare cu split () nu funcționează, ar putea fi foarte multe, aici și citate de diferite tipuri, și caractere scapate, etc. Un script foarte popular pentru parsarea CSV într-o matrice va veni în ajutorul nostru.
Scenariul final pentru citirea și parsarea unui fișier CSV pentru iMacros + JS:
În consolă vedem o matrice cu partajare îngrijită cu tabelul nostru.
Am aflat conținutul fișierelor csv. Acest lucru ridică o întrebare, dar cum inversați transformarea unui matrice în text? De fapt, nu este nimic complicat.
Să folosim următoarea funcție:
[Lecția 9]. Citirea și scrierea fișierelor txt în iMacros. Dezasamblam codul de gunoi și urmărim "Best Practice".
[Lecția 11]. Formatul JSON este ca și cum ar fi stocarea oricăror date în iMacros.
înlocuitor = înlocuitor || funcție (r, c, v)
nepoymu esența acestui cod (
vă rugăm să rețineți că în codul de mai sus, parserul site-ului a mâncat citate duble simple, transformându-le într-un pom de Crăciun "- în consecință, ele trebuie înlocuite!
Alexander, să spunem că matricea este în datele variabilelor. Apoi, pentru a scoate al doilea element al liniei a doua, trebuie să scrieți alertă (date [1] [1]);
În matrice, numerotarea elementelor începe de la zero.
Anunțat arrData înainte de a citi fișierul! Atunci a ieșit!