XML-ben van némi adat, amit szeretnék parancssorból automatizáltan feldolgozni, és bizonyos adatokat CSV-be írni. Mivel XML-t sose kellett komolyabban turkálnom, azt se tudom milyen eszközök jöhetnek szóba. Ha van használható ötleted némi példakóddal és megosztod, azt megköszönöm. Környezet: Ubuntu.
Hozzászólások
pár soros php script ?
És kiszeded a tömbből ami kell (persze lehet szabályosan is :))
Az a "),TRUE));" nem ")),TRUE);" akar lenni? Az _encode-nak akarod adni, nem a _decode-nak, hogy tömböt csináljon (ne objektumot)?
szerk.: mire beküldtem javitottad :)
De :) Igen, kicsit elcsúszott.
(legközelebb előbb kipróbálom, hiába két sor :D)
http://www.google.hu/search?q=xml+convert+csv+script
Ha test.xml a bemenő és test.csv a kimenő adat és a node1 alatti node2 alatti elemeket akarod exportálni, akkor PowerShell-lel:
Üdv,
Marci
Példa PowerShellre:
test.xml:
Legyen a feladat, hogy ebből az XML-ből a Mail és a DisplayName tulajdonságokat tegyük a test.csv-be.
Ekkor a script ennyi:
Eredmény:
Üdv,
Marci
Marci, te olyan vagy, mint az ürge a viccben, akinek kört, háromszöget és téglalapot mutogatnak. Neked mindenről *az* jut eszedbe. (Csak neked ez nem a szex, hanem a Powershell.) Mindenesetre értékelem az igyekezetet, sajnos nulla PS tudással nem tudtam a kódodat olyanra hozni, hogy megkapjam a kívánt eredményt. (BTW, most kell az a Select-Object, vagy nem?)
Egyelőre még keresgélek, de leginkább azért, mert noha elvben az xmlstarlet (és a linkelt példa) akár még jó is lehet, (vagy egy xml2 nevű csomag, amiben van egy direkt 2csv nevű parancs) - épp nem tudom letölteni ezeket a csomagokat, így nem biztos, hogy azok megfelelőek.
=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?
"Neked mindenről *az* jut eszedbe." -- Van benne valami! :)
Akár itt, akár privátban küldj példát a file-ból meg azt, hogy milyen formára kéne hozni.
A Select-Object akkor kell, ha más sorrendben akarod a mezőket kiírni, mint amilyen sorrendben az input tartalmazta, vagy ha nem akarsz minden mezőt a kimenetben látni.
Üdv,
Marci
Megoldottad?
Üdv,
Marci
off
most, a fenti komment hatására megint ránéztem a PowerShellre, s van végre friss Ubuntura.
még néhány apróság, azt' lehet, váltok végleg.
köszönöm.
/off
--
blogom
Egyelőre más formátumba exportálással kikerültem. Ellenben nem adtam fel, ha lesz rá kis időm, kopipésztelek belőle egy kisebb részletet.
=====
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?
XMLStarlet sel opciója... pl. így: http://www.joyofdata.de/blog/transforming-xml-document-into-csv-using-x…
Szerk.: egyébként nem tökéletes, mert a CSV meglehetősen bonyolult formátum és sok ponton megborulhat... a fenti PHP-s ötlet, még egy fputcsv-vel kiegészítve, hogy helyes CSV kimenetet kapj. Persze ha biztosan nincs több soros érték, szöveghatároló, szöveghatárolt értékben előforduló szöveghatáró stb. az adatokban, akkor az xmlstarlet-es is működik.
BlackY
--
"en is amikor bejovok dolgozni, nem egy pc-t [..] kapcsolok be, hanem a mainframe-et..." (sj)
Visszakérdezek: esetleg AWK-al való megoldás?
G.
============================================
"Share what you know. Learn what you don't."
http://stackoverflow.com/questions/1732348/regex-match-open-tags-except…
BlackY
--
"en is amikor bejovok dolgozni, nem egy pc-t [..] kapcsolok be, hanem a mainframe-et..." (sj)
Nagy igazsága van, csak valahogy ez jut eszembe...
Üdv,
Marci
időről időre mindig belefutok egy regexp kérdésnél rekurziv megoldásokba (amennyire adott regexp engine-ek kezelik), és mindig látok html,xml feldolgozókat, egy rakás kikötéssel, hiányossággal, szóval ez velünk marad még egy ideig :)
Nagy klasszikus.
Aki context-free nyelveket reguláris kifejezéssel akar feldolgozni, az más galádságokra is képes.
Python3-mal.
Lehetne kevesebb sorral is, de akkor kevésbé olvasható.
Kérdés: hogyan kell BBcode-dal xml-fájlt betenni? Csak így sikerült, hogy a '<' után szóközt hagytam.
Az input:
--
eutlantis
"Kérdés: hogyan kell BBcode-dal xml-fájlt betenni?"
Ezzel csináltam: http://htmlescape.net/htmlescape_tool.html
Üdv,
Marci
--
eutlantis
HTML-re a html-xml-utils vált be a legjobban. Gondolom, az XML-feldolgozó része se sokkal rosszabb.