Parsarea datelor xml, blog-delphi-programmer

În acest articol, am vrut doar să spun sau, mai degrabă, să fac singuri modul în care vom analiza foarte ușor datele XML. Acest lucru se face pentru proiectul VK API din Delphi. deoarece în fiecare dintre articolele discutate în AP ale AP I primim în principiu datele în format XML. așa că pentru comoditate vom face acest parsing mic. Se poate face sub forma unei funcții, sub forma unei simple clase în ceea ce privește cine este convenabil. Să începem. În funcția noastră vom indica doar eticheta dintre care să analizăm datele și vom indica doar numele acesteia fără paranteze unghiulare, din nou pentru a ne permite să știm între care etichetă să obținem numele și toate datele primite. Toate acestea pot fi, de asemenea, formalizate ca un modul separat, astfel încât să le puteți utiliza mai târziu în proiectele dvs., unde este necesară parsarea datelor.







De asemenea, am vrut să propun un parser pentru proiectul VK API într-o buclă, adică rezultatul valorilor ar putea fi XML. unde etichetele sunt repetate, adică o serie de date - de valori diferite. Acest lucru este, de asemenea, pentru o muncă mai convenabilă, astfel încât de fiecare dată să nu trecem prin ciclu și să nu luăm datele. În principiu, nu este nimic complicat aici, în următorul articol vă voi spune cum să faceți același parser al fișierelor XML, folosind expresii regulate, cred că va funcționa mult mai repede decât acesta și poate că va fi apoi înlocuit de acest parser. Dar acum am anunțat o clasă atât de mică. Da, desigur, am creat primul modul (File-New-Unit)







Prima functie va fi responsabila pentru parser doar o singura eticheta, adica vom indica intre ce eticheta sa primim date - intre aceasta si primim (daca sunt multe, identice, apoi intre prima gasita). Cea de-a doua funcție primește toate datele găsite între etichetă, adică dacă există o mulțime de date sub aceeași etichetă, atunci ea le va primi pe toate. Prima funcție arată astfel

Pentru a rezolva o problemă SPECIFICĂ, cum este de exemplu în VK API, această abordare poate fi utilizată pentru prima dată, dar, în general, o astfel de "invenție pentru biciclete" este inutilă.
Dacă aveți nevoie să parsezi XML, atunci Delphi are deja un modul cu mult timp în urmă msxml.pas - rapid și, în general, destul de convenabil.
Dacă trebuie să reduceți mărimea sursei în ceea ce privește numărul de rânduri - NativeXML - funcționează rapid (cel puțin eu sunt confortabil cu viteza) și din nou este convenabil. Nu este necesar să înțelegi prea mult timp. Ei bine, în caz de urgență, există o grămadă de parseri, biblioteci, componente pentru XML - trebuie doar să le cereți Google să le găsească.

[...] Andrey53 scrie: Acest lucru se face pentru proiectul VK API din Delphi, ca în fiecare articol din API-ul VC, obținem în principiu datele în format XML, deci pentru comoditate vom face acest parsing mic. Puteți face acest lucru ca o funcție, ... [...]

[...] am analizat modul în care am putea analiza mai bine datele XML. Deoarece am obține foarte mult rezultatul sub formă de XML, atunci [...]

2Sergei i-am dat ca o altă variantă de parsare de date, dar acum despre mărimea aici, desigur, ai nevoie de ceva diferit, dar despre etichetele diferitelor probleme? eticheta pe care doriți să o transferați la dvs. va fi parsit, principalul lucru din ciclu este să rulați acest lucru întreg







Trimiteți-le prietenilor: