Új hozzászólás Aktív témák
-
Karma
félisten
válasz
WonderCSabo
#3409
üzenetére
Igen, én is ilyen SAX-okat szoktam látni. Tagváltozók, hogy éppen milyen tagen belül jár a parser, aztán a startElement, characters és endElement metódusokban összeturmixolva a mindenféle esetet lekezelő logika; bonyolultabb esetben egy stack még előfordul. Eztán elindítod a parsert az XML-re, végigdarálja, a callbackjeid meghívódnak és a legvégén örülsz, ha minden kitöltődött rendben.
Ehhez képest a StAX fordítva működik. Amikor parsolsz, te lépteted folyamatosan a következő tokenre (iterátor), és az aktuális token típusától, nevétől, stb. eldöntheted, mit csinálsz - akár félbe is hagyhatod a feldolgozást.
De ami fontosabb, a parsert szabadon megoszthatod több metódussal, amik egy adott elemet tudnak feldolgozni. Az előző példakód úgy nézne ki, hogy if fák helyett vannak parseFirstName, parseLastName, stb. metódusaid, amik a startElementtől az endElementig elvégzik a dolgukat.
És eközben teljesítményben nem rosszabb. Itt egy jókis stackoverflow kérdés, amit reggel olvasgattam amikor a kérdésemet elkezdtem.
Példát most nem tudok írni, mert dolgozom.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Xiaomi Redmi 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Telefon felvásárlás!! Apple Watch Series 6/Apple Watch Series 7/Apple Watch Series 8
- iPhone 15 Pro 128GB 100% (1év Garancia)
- BESZÁMÍTÁS! MSI B450M R5 5600X 16GB DDR4 500GB SSD RTX 3060Ti 8GB SilentiumPC Signum SG1 TG FSP 700W
- iPhone 13 mini 128GB Green -1 ÉV GARANCIA -Kártyafüggetlen, MS3896, 95% Akkumulátor
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

